在C語言開發(fā)中,經(jīng)常需要將JSON文本轉(zhuǎn)換為數(shù)組對象進行處理,這就需要使用C語言支持的JSON庫來完成這個轉(zhuǎn)換操作。
目前常用的C語言JSON庫有cJSON、Jansson等,這里以cJSON為例介紹如何完成JSON轉(zhuǎn)換為數(shù)組對象的操作。
// 第一步,導入cJSON庫 #include "cJSON.h" // 第二步,定義一個JSON字符串 const char* json_str = "[1, 2, 3, 4, 5]"; // 第三步,解析JSON字符串為cJSON對象 cJSON* root = cJSON_Parse(json_str); // 第四步,遍歷cJSON對象,構(gòu)造數(shù)組對象 int i = 0; int arr_size = cJSON_GetArraySize(root); int* arr = (int*)malloc(sizeof(int) * arr_size); cJSON* item = NULL; cJSON_ArrayForEach(item, root) { arr[i++] = item->valueint; } // 第五步,釋放cJSON對象 cJSON_Delete(root);
上述代碼中,第一步導入了cJSON庫,第二步定義了一個JSON字符串,第三步利用cJSON_Parse()函數(shù)將JSON字符串解析為cJSON對象,第四步通過遍歷cJSON對象,構(gòu)造了一個數(shù)組對象,最后釋放cJSON對象。
通過上述代碼,我們就可以將JSON格式的數(shù)據(jù)轉(zhuǎn)換為C語言能夠識別的數(shù)組對象,進而進行后續(xù)的數(shù)據(jù)處理。
上一篇vue 2 菜鳥
下一篇python 常用錯誤