JSON是一種廣泛使用的輕量級數據交換格式,一般用于表述跨平臺、分布式環境下的數據交換。在C語言中,我們可以通過一些第三方庫實現對JSON對象的處理。本文將介紹如何遍歷JSON對象。
#include <stdio.h> #include <jansson.h> int main() { // 創建一個JSON對象 const char *json_data = "{\"name\":\"Tom\",\"age\":20,\"gender\":\"male\"}"; json_t *root = json_loads(json_data, 0, NULL); if (!root) { printf("Error: Failed to parse JSON string!\n"); return 1; } // 遍歷JSON對象 const char *key; json_t *value; json_object_foreach(root, key, value) { // 打印JSON的鍵值對 printf("%s: ", key); switch (json_typeof(value)) { case JSON_STRING: printf("%s\n", json_string_value(value)); break; case JSON_INTEGER: printf("%ld\n", json_integer_value(value)); break; case JSON_REAL: printf("%f\n", json_real_value(value)); break; case JSON_TRUE: printf("true\n"); break; case JSON_FALSE: printf("false\n"); break; case JSON_NULL: printf("null\n"); break; default: printf("unknown\n"); break; } } // 釋放JSON對象 json_decref(root); return 0; }
上述代碼使用了第三方庫“jansson”,通過調用“json_loads”函數將JSON字符串轉換為JSON對象,然后通過“json_object_foreach”函數遍歷鍵值對,最后利用“json_decref”函數釋放JSON對象。
總之,通過使用第三方庫我們可以很方便地處理JSON對象。掌握JSON數據的處理技能,對于分布式系統開發和API接口設計都非常有用。
上一篇c 遍歷json數組
下一篇vue angul前端