在 C 語(yǔ)言中,我們可以使用常見的 JSON 庫(kù)(例如 cJSON)來(lái)處理 JSON 數(shù)據(jù),其中一個(gè)常見的任務(wù)是獲取 JSON 數(shù)組的長(zhǎng)度。
在 cJSON 庫(kù)中,JSON 數(shù)組實(shí)際上是 c 對(duì)象的數(shù)組。要獲取數(shù)組的長(zhǎng)度,我們只需遍歷該數(shù)組,并計(jì)算其元素?cái)?shù)量即可。
#include <stdio.h> #include <cjson/cJSON.h> int main() { char* json_str = "[1,2,3,4,5]"; cJSON* root = cJSON_Parse(json_str); if (root == NULL) { printf("Error: Invalid JSON string\n"); return 1; } if (cJSON_IsArray(root)) { int size = cJSON_GetArraySize(root); printf("Array size: %d\n", size); } else { printf("Error: Not an array\n"); return 1; } cJSON_Delete(root); return 0; }
在上面的代碼中,我們將 JSON 字符串解析為 cJSON 對(duì)象,并檢查該對(duì)象是否為數(shù)組。如果對(duì)象是數(shù)組,我們將使用 cJSON_GetArraySize() 函數(shù)獲取其長(zhǎng)度。
需要注意的是,在使用 cJSON 庫(kù)時(shí),我們需要從其官方網(wǎng)站(https://github.com/DaveGamble/cJSON)下載并安裝該庫(kù)。