在c語言中,獲取json所有key有多種方式。其中,較為常用的方法是使用cJSON庫。本文將該方法進行詳細介紹。
#include <stdio.h> #include <cJSON.h> char* jsonStr = "{ \"name\": \"Tom\", \"age\": 18, \"gender\": \"male\" }"; int main() { cJSON *root = cJSON_Parse(jsonStr); cJSON *item = root->child; while (item) { printf("%s\n", item->string); item = item->next; } cJSON_Delete(root); return 0; }
首先,需要使用cJSON_Parse()函數將json字符串轉為cJSON對象。然后,通過獲取cJSON對象中的特定字段來獲取key值。具體實現方式是:通過root->child獲取到第一個字段,然后通過item->next不斷遍歷,直到遍歷到最后一個字段。在遍歷的過程中,使用item->string來獲取key值。
最后,使用cJSON_Delete()釋放內存。