在C語言中,如果我們需要解析一個(gè)JSON字符串并獲取其中某個(gè)值,可以使用第三方庫(kù):cJSON。
#include <stdio.h> #include <cJSON.h> int main() { char* json_string = "{\"name\":\"張三\",\"age\":20}"; cJSON* json = cJSON_Parse(json_string); if (json == NULL) { printf("解析JSON字符串失?。n"); return -1; } cJSON* name = cJSON_GetObjectItem(json, "name"); if (name == NULL) { printf("沒有找到name字段!\n"); cJSON_Delete(json); return -1; } printf("name的值為:%s\n", name->valuestring); cJSON_Delete(json); return 0; }
代碼中首先定義了一個(gè)JSON字符串,然后調(diào)用cJSON_Parse()函數(shù)解析字符串,將結(jié)果保存在cJSON對(duì)象中。
接下來,通過cJSON_GetObjectItem()函數(shù)獲取對(duì)象中的name字段,然后打印出其值。
需要注意的是,在使用cJSON庫(kù)時(shí),需要使用cJSON_Delete()函數(shù)手動(dòng)釋放對(duì)象內(nèi)存。