C 語言是一種強大的編程語言,可以通過其豐富的庫和函數(shù)來處理各種數(shù)據格式。在處理數(shù)據格式時,JSON 是一種常用的數(shù)據交換格式,也是 C 語言中使用廣泛的數(shù)據格式之一。本文將介紹如何在 C 語言中定義一個 JSON 字符串數(shù)組。
#include <stdio.h> #include <jansson.h> int main() { const char *json_strs[] = { "{\"name\":\"Tom\",\"age\":29,\"city\":\"Beijing\"}", "{\"name\":\"Jerry\",\"age\":25,\"city\":\"Shanghai\"}", "{\"name\":\"Alice\",\"age\":27,\"city\":\"Guangzhou\"}", "{\"name\":\"Bob\",\"age\":32,\"city\":\"Shenzhen\"}" }; int i; for(i = 0; i< 4; i++){ json_error_t error; json_t *root = json_loads(json_strs[i], 0, &error); if(!root) { printf("error: on line %d: %s\n", error.line, error.text); return 1; } printf("Name: %s, Age: %d, City: %s\n", json_string_value(json_object_get(root, "name")), json_integer_value(json_object_get(root, "age")), json_string_value(json_object_get(root, "city"))); json_decref(root); } return 0; }
上述代碼通過引入 jansson 庫來處理 JSON 數(shù)據,并定義了一個字符串數(shù)組 json_strs,其中包含四個 JSON 字符串。
在代碼中使用 json_loads 函數(shù)將 JSON 字符串轉成 JSON 對象。如果轉換失敗,將輸出錯誤信息到屏幕上。
在 for 循環(huán)中,逐一讀取 json_strs 數(shù)組中的 JSON 字符串,通過 json_object_get 函數(shù)獲取其中的 name、age、city 等值,并將其打印出來。最后釋放 JSON 對象內存。
以上就是在 C 語言中定義 JSON 字符串數(shù)組的方法。如有疑問或需進一步了解,可參考 jansson 庫文檔。