c語言可以通過添加json對象屬性來靈活地處理json數據,讓我們來看一個例子:
#include <stdio.h> #include <stdlib.h> #include <string.h> #define JSON_OBJECT_SIZE 1024 // json對象大小 int main() { char jsonStr[JSON_OBJECT_SIZE]; char *result; // 存放結果 // 創建json對象 cJSON *json = cJSON_CreateObject(); // 添加屬性 cJSON_AddStringToObject(json, "name", "Tom"); cJSON_AddNumberToObject(json, "age", 18); cJSON_AddBoolToObject(json, "isMale", true); // 序列化json對象為字符串 result = cJSON_Print(json); strcpy(jsonStr, result); free(result); // 輸出json字符串 printf("%s\n", jsonStr); // 釋放json對象 cJSON_Delete(json); return 0; }
以上代碼中,我們使用了cJSON庫來創建和處理json對象。首先我們定義了一個json對象大小,在main函數中創建了一個json對象,然后通過cJSON_Add*ToObject函數添加了三個屬性,分別是字符串類型的"name",數字類型的"age"和布爾類型的"isMale"。接下來將json對象序列化為字符串,并輸出結果。最后釋放了json對象。
這里需要注意的是,在添加屬性時需要指定屬性名和屬性值的類型,cJSON_Add*ToObject函數中*為具體的數據類型,包括String、Number、Array、Object等等。例如,cJSON_AddStringToObject函數表示添加一個字符串類型的屬性。