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

c 獲取json返回值

呂致盈1年前8瀏覽0評論

C語言在獲取JSON返回值時,可以使用第三方庫,例如cJSON庫。

#include <stdio.h>
#include <cJSON.h>
int main() {
char *json_string = "{\"name\": \"John\", \"age\": 30, \"city\": \"New York\"}";
cJSON *json = cJSON_Parse(json_string);
if (json == NULL) {
const char *error_ptr = cJSON_GetErrorPtr();
if (error_ptr != NULL) {
fprintf(stderr, "Error before: %s\n", error_ptr);
}
exit(EXIT_FAILURE); // 解析JSON失敗
}
cJSON *name = cJSON_GetObjectItemCaseSensitive(json, "name");
char *name_value = cJSON_GetStringValue(name);
cJSON *age = cJSON_GetObjectItemCaseSensitive(json, "age");
int age_value = age->valueint;
cJSON *city = cJSON_GetObjectItemCaseSensitive(json, "city");
char *city_value = cJSON_GetStringValue(city);
printf("Name: %s\nAge: %d\nCity: %s\n", name_value, age_value, city_value);
cJSON_Delete(json);
return 0;
}

首先,需要傳入JSON字符串到cJSON_Parse函數(shù)中進(jìn)行解析。解析成功后,可以根據(jù)JSON鍵名使用cJSON_GetObjectItemCaseSensitive獲取對應(yīng)JSON值的指針。通過cJSON_GetStringValue函數(shù)獲取字符串類型的值,通過valueint獲取整數(shù)類型的值。

使用完畢后需要通過cJSON_Delete函數(shù)釋放分配給JSON的內(nèi)存。