JSON(JavaScript Object Notation)是一種輕量級數據交換格式,常用于web開發中的數據傳輸。C語言作為一種強大的編程語言,在開發中也經常會使用JSON格式進行通信。
C語言中可以使用第三方庫來解析和生成JSON格式數據,其中比較常用的庫有cJSON和json-c。
//使用cJSON庫生成JSON格式數據 #include "cJSON.h" #includeint main() { cJSON* root = cJSON_CreateObject(); //創建JSON格式數據的根節點 cJSON_AddItemToObject(root, "name", cJSON_CreateString("小明")); //添加名字 cJSON_AddItemToObject(root, "age", cJSON_CreateNumber(18)); //添加年齡 char* result = cJSON_Print(root); //將JSON格式數據轉換成字符串 printf("%s", result); //輸出JSON格式數據 cJSON_Delete(root); //釋放內存 return 0; }
使用json-c庫生成JSON格式數據的示例代碼如下:
//使用json-c庫生成JSON格式數據 #include#include int main() { json_object* root = json_object_new_object(); //創建JSON格式數據的根節點 json_object* name = json_object_new_string("小明"); json_object_object_add(root, "name", name); //添加名字 json_object* age = json_object_new_int(18); json_object_object_add(root, "age", age); //添加年齡 const char* result = json_object_to_json_string(root); //將JSON格式數據轉換成字符串 printf("%s", result); //輸出JSON格式數據 json_object_put(root); //釋放內存 return 0; }
無論是使用cJSON還是json-c庫,都可以方便地生成JSON格式數據。而在解析JSON格式數據時,cJSON庫比json-c庫更加方便易用。
//使用cJSON庫解析JSON格式數據 #include "cJSON.h" #includeint main() { char* json_str = "{\"name\":\"小明\",\"age\":18}"; //定義JSON格式數據 cJSON* root = cJSON_Parse(json_str); //解析JSON格式數據 cJSON* name = cJSON_GetObjectItem(root, "name"); //獲取名字 cJSON* age = cJSON_GetObjectItem(root, "age"); //獲取年齡 printf("名字:%s,年齡:%d", name->valuestring, age->valueint); //輸出解析結果 cJSON_Delete(root); //釋放內存 return 0; }
無論是在生成還是解析JSON格式數據時,掌握C語言中使用第三方庫操作JSON格式數據,是web開發中必不可少的技能。
上一篇vue lazyload
下一篇mysql做olap