欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c json序列化轉為數組

吉茹定1年前9瀏覽0評論

C語言中使用JSON序列化字符串是非常常見的需求,通常我們需要將JSON字符串轉化為數組來進行數據的操作。下面是一個簡單的示例。

#include <stdio.h>
#include <cjson/cJSON.h>
void parseJsonArray(cJSON* root)
{
cJSON* item = NULL;
int arraySize = cJSON_GetArraySize(root);
for (int i = 0; i< arraySize; i++)
{
item = cJSON_GetArrayItem(root, i);
if (item->type == cJSON_String)
{
printf("value: %s\n", item->valuestring);
}
}
}
int main(int argc, char **argv)
{
const char* jsonStr = "[\"value1\", \"value2\", \"value3\"]";
cJSON* json = cJSON_Parse(jsonStr);
if (!json)
{
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return -1;
}
parseJsonArray(json);
cJSON_Delete(json);
return 0;
}

代碼解釋如下:

  • 第2-10行:定義了一個parseJsonArray函數,它接收一個cJSON對象,并遍歷對象中的元素,如果元素是cJSON_String類型,則輸出它的值。
  • 第12-26行:主函數中,定義了一個jsonStr變量,它是一個JSON數組的字符串表示,然后使用cJSON_Parse函數將其解析為一個cJSON對象。
  • 第28行:如果解析失敗,則輸出錯誤信息。
  • 第30行:調用parseJsonArray函數來遍歷解析出來的cJSON對象。
  • 第32行:刪除解析出來的cJSON對象。

總的來說,使用C語言解析JSON字符串是一件比較復雜的任務,但是cJSON庫可以幫助我們更快捷、高效地實現這個過程。