在C編程中,我們可以使用JSON-C庫來解析JSON數據。如果我們想循環JSON數據,我們可以將JSON值解析為一個JSON對象,并使用JSON對象的接口來訪問和操作它。
以下代碼片段演示了如何循環JSON數據:
#include <stdio.h> #include <stdlib.h> #include <json-c/json.h> int main() { const char *json = "{\"name\":\"小明\",\"age\":20}"; struct json_object *obj = json_tokener_parse(json); enum json_type type; const char *key; struct json_object *val; json_object_object_foreach(obj, key, val) { type = json_object_get_type(val); switch (type) { case json_type_string: printf("key: %s, value: %s\n", key, json_object_get_string(val)); break; case json_type_int: printf("key: %s, value: %d\n", key, json_object_get_int(val)); break; } } json_object_put(obj); return 0; }
在這個例子中,我們使用json_tokener_parse函數將JSON字符串解析為一個JSON對象。
我們使用json_object_object_foreach函數遍歷JSON對象的所有鍵和值。在循環中,我們檢查JSON值的類型,并據此進行處理。在本例中,我們分別處理字符串和整數類型,并將它們的鍵和值輸出到控制臺。
使用上述代碼片段,我們可以輕松循環JSON數據并提取所需的信息。