在開發(fā)中,我們經(jīng)常需要處理 JSON 格式數(shù)據(jù)。當(dāng)我們使用 C 語(yǔ)言進(jìn)行開發(fā)時(shí),需要使用第三方庫(kù)來(lái)解析 JSON 數(shù)據(jù)。以下是使用 cJSON 庫(kù)來(lái)取 JSON 串的示例:
#include "cJSON.h" #include#include int main() { char *json_string = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; cJSON *json = cJSON_Parse(json_string); if (!json) { printf("Error before: [%s]\n", cJSON_GetErrorPtr()); return 1; } cJSON *name = cJSON_GetObjectItem(json, "name"); cJSON *age = cJSON_GetObjectItem(json, "age"); cJSON *city = cJSON_GetObjectItem(json, "city"); printf("Name: %s\n", name->valuestring); printf("Age: %d\n", age->valueint); printf("city: %s\n", city->valuestring); cJSON_Delete(json); return 0; }
在上述示例中,我們聲明了一個(gè) JSON 字符串并使用 cJSON_Parse 函數(shù)進(jìn)行解析。如果解析失敗,我們會(huì)打印錯(cuò)誤信息并退出程序。接著,我們可以使用 cJSON_GetObjectItem 函數(shù)來(lái)獲取 JSON 對(duì)象中的具體值,并使用 valuestring 或 valueint 屬性來(lái)獲取字符串或整數(shù)值。
最后,我們需要記得使用 cJSON_Delete 來(lái)清理 JSON 對(duì)象,以免出現(xiàn)內(nèi)存泄漏。
上一篇vue drop