色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 類轉(zhuǎn)json字符串?dāng)?shù)組對(duì)象數(shù)組

C語言是一門非常經(jīng)典的編程語言,為了實(shí)現(xiàn)數(shù)據(jù)的傳輸與處理,我們經(jīng)常需要將C類型的數(shù)據(jù)轉(zhuǎn)換為JSON字符串或者對(duì)象數(shù)組。下面我們通過使用cJSON庫,來實(shí)現(xiàn)將C類型轉(zhuǎn)換為JSON字符串?dāng)?shù)組對(duì)象數(shù)組。

#include <stdio.h>
#include <stdlib.h>
#include <cJSON.h>
int main(){
// 創(chuàng)建JSON對(duì)象 
cJSON *root = cJSON_CreateObject();
cJSON_AddStringToObject(root, "name", "John");
cJSON_AddNumberToObject(root, "age", 18);
// 將JSON對(duì)象轉(zhuǎn)換為JSON字符串 
char *jsonStr = cJSON_Print(root);
printf("%s\n", jsonStr);
// 將JSON字符串轉(zhuǎn)換為JSON對(duì)象 
cJSON *newRoot = cJSON_Parse(jsonStr);
cJSON *nameObj = cJSON_GetObjectItem(newRoot, "name");
cJSON *ageObj = cJSON_GetObjectItem(newRoot, "age");
printf("name: %s, age: %d\n", nameObj->valuestring, ageObj->valueint);
// 創(chuàng)建JSON數(shù)組 
cJSON *arr = cJSON_CreateArray();
cJSON_AddItemToArray(arr, cJSON_CreateNumber(1));
cJSON_AddItemToArray(arr, cJSON_CreateNumber(2));
cJSON_AddItemToArray(arr, cJSON_CreateNumber(3));
// 將JSON數(shù)組轉(zhuǎn)換為JSON對(duì)象 
cJSON *arrRoot = cJSON_CreateObject();
cJSON_AddItemToObject(arrRoot, "nums", arr);
char *arrStr = cJSON_Print(arrRoot);
printf("%s\n", arrStr);
// 將JSON對(duì)象轉(zhuǎn)換為JSON數(shù)組 
cJSON *newArrRoot = cJSON_Parse(arrStr);
cJSON *newArr = cJSON_GetObjectItem(newArrRoot, "nums");
printf("%d\n", cJSON_GetArraySize(newArr));
cJSON_Delete(newArrRoot);
cJSON_Delete(arrRoot);
cJSON_Delete(root);
free(jsonStr);
free(arrStr);
return 0;
}

在上述代碼中,我們使用了cJSON庫中的函數(shù),實(shí)現(xiàn)了將C類型轉(zhuǎn)換為JSON字符串和對(duì)象數(shù)組的功能。其中,cJSON_CreateObject()函數(shù)創(chuàng)建了一個(gè)JSON對(duì)象,cJSON_AddStringToObject()和cJSON_AddNumberToObject()函數(shù)將字符串和數(shù)字鍵值對(duì)添加到JSON對(duì)象中。

我們將JSON對(duì)象轉(zhuǎn)換為JSON字符串,使用了cJSON_Print()函數(shù)。接著,我們使用cJSON_Parse()函數(shù)將JSON字符串轉(zhuǎn)換為JSON對(duì)象。獲取JSON對(duì)象中的鍵值對(duì),需要使用cJSON_GetObjectItem()函數(shù)。

除了將C類型轉(zhuǎn)換為JSON對(duì)象和JSON字符串,我們還需要實(shí)現(xiàn)將JSON數(shù)組轉(zhuǎn)換為JSON對(duì)象的功能。在上述代碼中,我們使用了cJSON_CreateArray()函數(shù)創(chuàng)建了一個(gè)JSON數(shù)組,cJSON_AddItemToArray()函數(shù)將數(shù)字添加到JSON數(shù)組中。接著,我們使用cJSON_CreateObject()函數(shù)創(chuàng)建了一個(gè)JSON對(duì)象,使用cJSON_AddItemToObject()函數(shù)將JSON數(shù)組添加到對(duì)象中,并使用cJSON_Print()函數(shù)將JSON對(duì)象轉(zhuǎn)換為JSON字符串。

最后,我們使用cJSON_Parse()函數(shù)將JSON字符串轉(zhuǎn)換為JSON對(duì)象,使用cJSON_GetObjectItem()函數(shù)獲取JSON對(duì)象中的JSON數(shù)組,并使用cJSON_GetArraySize()函數(shù)獲取JSON數(shù)組的長度。