在C語言中,有時我們需要獲取JSON格式的數據,那么如何獲得呢?我們可以通過cJSON這個庫來實現。
//引入頭文件 #include "cJSON.h" #include#include #include int main() { char *jsonStr = "{\"name\":\"張三\",\"age\":20, \"isMale\":true}"; //json字符串 cJSON *root = cJSON_Parse(jsonStr); //解析json字符串 if (root == NULL) { printf("Parse Json Error:%s\n", cJSON_GetErrorPtr()); exit(EXIT_FAILURE); } cJSON *name = cJSON_GetObjectItem(root, "name"); //獲取name屬性的值 cJSON *age = cJSON_GetObjectItem(root, "age");//獲取age屬性的值 cJSON *isMale = cJSON_GetObjectItem(root, "isMale");//獲取isMale屬性的值 printf("name=%s, age=%d, isMale=%d\n", name->valuestring, age->valueint, isMale->valueint); cJSON_Delete(root); //釋放內存 return 0; }
在上述代碼中,我們首先引入了cJSON的頭文件。我們在main函數中定義了一個jsonStr字符串,它是一個JSON格式的字符串。我們然后使用cJSON_Parse()函數將字符串解析成cJSON對象。如果解析失敗,則cJSON_Parse()函數返回NULL,并使用cJSON_GetErrorPtr()函數獲取解析錯誤的原因。我們然后可以使用cJSON_GetObjectItem()函數獲取各自屬性的值,并使用值的類型(string,int或bool)來訪問其值。最后,我們使用cJSON_Delete()函數釋放內存。
上一篇vue 2 權威指南
下一篇delete提交json