JSON 是一種輕量級、易于閱讀和編寫的數據交換格式。它是一種基于文本的數據格式,由一些 attribute 形成的鍵值對對象。JSON 對于前端和后端開發者來說都非常有用,而在 C 語言中,我們同樣可以通過 JSON 來相應的處理數據。
在 C 語言中,最常用的 JSON 庫是 cJSON。cJSON 是一個簡單的 JSON 解析庫,開源、輕量級、可移植并且性能優異。它只有一個頭文件 cJSON.h,非常方便在我們的程序中調用。
下面是一個簡單的 cJSON JSON 解析代碼示例:
#include "cJSON.h" #include <stdio.h>#include <stdlib.h>#include <string.h>char *json_str = "{\"name\":\"Tom\", \"age\":18}"; int main(int argc, char *argv[]) { cJSON *json; cJSON *name, *age; char *name_str, *age_str; int age_int; json = cJSON_Parse(json_str); if (json == NULL) { printf("Error before: [%s]\n", cJSON_GetErrorPtr()); return -1; } name = cJSON_GetObjectItem(json, "name"); age = cJSON_GetObjectItem(json, "age"); if (name == NULL || age == NULL) { cJSON_Delete(json); return -1; } name_str = name->valuestring; age_str = cJSON_PrintUnformatted(age); age_int = atoi(age_str); cJSON_Delete(json); printf("Name: %s, Age: %d\n", name_str, age_int); return 0; }
通過這個代碼示例,我們可以看出,cJSON 的使用十分簡單。我們只需要下載 cJSON 的頭文件,然后在需要調用的程序中 include 即可。在上面的代碼示例中,我們首先利用 cJSON_Parse(callback) 函數將 JSON 字符串轉換為 cJSON 對象,然后我們就可以通過 cJSON_GetObjectItem(cJSON *object, const char *string) 函數來獲取 JSON 數據中的每一項。最后,我們需要調用 cJSON_Delete(cJSON *c) 函數來釋放內存。
上一篇vue -4085
下一篇html字體字型的設置