C語言中的JSON數(shù)組是一種非常常用的數(shù)據(jù)類型,它可以保存同一類型數(shù)據(jù)的集合。在對(duì)JSON數(shù)組進(jìn)行操作時(shí),我們經(jīng)常需要獲取數(shù)組的長(zhǎng)度(即數(shù)組中所包含的元素個(gè)數(shù)),以便于對(duì)數(shù)組進(jìn)行遍歷或其他操作。
#include <stdio.h> #include <cJSON.h> int main() { cJSON *root = NULL; cJSON *array = NULL; char *json_string = "[\"apple\", \"banana\", \"orange\"]"; root = cJSON_Parse(json_string); array = cJSON_GetObjectItem(root, ""); int array_len = cJSON_GetArraySize(array); printf("The length of the array is: %d\n", array_len); cJSON_Delete(root); return 0; }
上面的代碼中,我們首先使用cJSON_Parse函數(shù)將JSON字符串解析成cJSON對(duì)象。然后,通過使用cJSON_GetObjectItem函數(shù)獲取到數(shù)組對(duì)象,并使用cJSON_GetArraySize函數(shù)獲取數(shù)組的長(zhǎng)度。最后輸出數(shù)組長(zhǎng)度即可。
需要注意的是,數(shù)組下標(biāo)從0開始,因此數(shù)組的長(zhǎng)度應(yīng)該是最后一個(gè)元素的下標(biāo)加1。