在C語言中,循環判斷Json對象是一項基本操作。下面是一段示例代碼:
#include "json-c/json.h" #include "string.h" int main(int argc, char *argv[]) { char *json_string = "{\"name\":\"Tom\", \"age\":20}"; struct json_object *json_obj = json_tokener_parse(json_string); if (json_obj == NULL) { fprintf(stderr, "Error: Failed to parse JSON string\n"); return EXIT_FAILURE; } enum json_type type; const char *name; struct json_object *val; json_object_object_foreach(json_obj, name, val) { type = json_object_get_type(val); if (type == json_type_string) { printf("%s: %s\n", name, json_object_get_string(val)); } else if (type == json_type_int) { printf("%s: %d\n", name, json_object_get_int(val)); } } json_object_put(json_obj); return EXIT_SUCCESS; }
在代碼中,我們通過json_tokener_parse()函數將Json字符串解析成Json對象。然后,通過json_object_object_foreach()函數遍歷Json對象中的每個鍵值對,并使用json_object_get_type()函數獲取值的類型。根據不同類型,我們可以使用不同的json_object_get_xxx()函數獲取值,并輸出到控制臺上。
上一篇python 矩陣的輸出
下一篇python 點積運算