色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 的json轉換為字符串數組對象

方一強1年前8瀏覽0評論

C 語言提供了許多 JSON 解析庫,常用的有 cJSON、jansson 等。其中 cJSON 是一款非常輕量級的庫,使用簡單,性能優秀。而在使用 cJSON 進行 JSON 解析的過程中,常常需要將 JSON 轉換成 C 語言中的字符串數組對象。

下面通過一段示例代碼來介紹 cJSON 如何將 JSON 轉換成字符串數組對象:

#include <stdio.h>
#include <cJSON.h>
int main() {
char *json_str = "{ \"name\": \"Tom\", \"age\": 18 }";
cJSON *root = cJSON_Parse(json_str);
cJSON *name = cJSON_GetObjectItem(root, "name");
cJSON *age = cJSON_GetObjectItem(root, "age");
char *name_str = cJSON_Print(name); // 將 name 轉換成字符串
char *age_str = cJSON_Print(age); // 將 age 轉換成字符串
char *str_arr[] = { name_str, age_str }; // 將字符串存入數組
int arr_len = sizeof(str_arr) / sizeof(str_arr[0]); // 計算數組長度
for (int i = 0; i< arr_len; i++) {
printf("%s\n", str_arr[i]);
}
cJSON_Delete(root);
return 0;
}

這段代碼的功能是將 JSON 數據 { "name": "Tom", "age": 18 } 轉換成字符串數組對象,并輸出數組中的元素。首先使用 cJSON_Parse 函數將 JSON 字符串轉換成 cJSON 對象,之后使用 cJSON_GetObjectItem 函數獲取對象中的 name、age 字段,并且使用 cJSON_Print 函數將其轉換成字符串。

接著將轉換后的字符串存入 str_arr 數組中,并利用計算數組長度的方法計算數組長度。最后使用 for 循環遍歷輸出數組中的元素。

以上就是 cJSON 如何將 JSON 轉換成字符串數組對象的方法,希望對使用 cJSON 的開發者們有所幫助。