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

c 中 json字符串

張吉惟1年前9瀏覽0評論

JSON是一種輕量級的數據交換格式,C語言中可以實現JSON字符串的解析和生成。

C語言中解析JSON字符串需要使用第三方庫,比如 cJSON 庫,這個庫提供了解析、生成JSON字符串等能力。

#include <stdio.h>
#include <cjson/cJSON.h>
int main() {
// 解析json字符串
char* json_str = "{ \"name\":\"Tom\", \"age\":18, \"hasDog\":true }";
cJSON* json = cJSON_Parse(json_str);
if (json != NULL) {
// 獲取json對象的值
cJSON* name = cJSON_GetObjectItem(json, "name");
printf("name: %s\n", name->valuestring);
cJSON* age = cJSON_GetObjectItem(json, "age");
printf("age: %d\n", age->valueint);
cJSON* hasDog = cJSON_GetObjectItem(json, "hasDog");
printf("hasDog: %d\n", hasDog->valueint);
}
// 生成json字符串
cJSON* new_json = cJSON_CreateObject();
cJSON_AddStringToObject(new_json, "name", "Jack");
cJSON_AddNumberToObject(new_json, "age", 20);
cJSON_AddBoolToObject(new_json, "hasDog", false);
char* new_json_str = cJSON_Print(new_json);
printf("new json string: %s\n", new_json_str);
cJSON_Delete(new_json);
return 0;   
}

在解析JSON字符串時,可以通過 cJSON_Parse() 函數將JSON字符串轉化為 cJSON 對象,然后使用 cJSON_GetObjectItem() 函數獲取對象的值。

在生成JSON字符串時,可以通過 cJSON 庫提供的函數,比如 cJSON_CreateObject()、cJSON_AddStringToObject() 等將需要的值添加到 cJSON 對象中,再通過 cJSON_Print() 函數將 cJSON 對象轉化為 JSON 字符串。