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

c 遍歷 json 屬性

錢多多1年前8瀏覽0評論

在C語言中,遍歷JSON屬性是一項常見的任務。在本文中,我們將介紹如何使用C語言遍歷JSON對象的屬性。

#include <stdio.h>
#include <stdlib.h>
#include <jansson.h>
int main()
{
char *json_string = "{\"name\":\"Tom\",\"age\":18,\"gender\":\"male\"}";
json_t *root;
json_error_t error;
root = json_loads(json_string, 0, &error);
if (!root) {
fprintf(stderr, "error: on line %d, column %d: %s\n",error.line, error.column, error.text);
return EXIT_FAILURE;
}
const char *key;
json_t *value;
json_object_foreach(root, key, value) {
printf("%s: ", key);
switch(json_typeof(value)) {
case JSON_STRING:
printf("%s\n", json_string_value(value));
break;
case JSON_INTEGER:
printf("%lld\n", (long long) json_integer_value(value));
break;
case JSON_REAL:
printf("%f\n", json_real_value(value));
break;
default:
break;
}
}
json_decref(root);
return EXIT_SUCCESS;
}

首先,我們需要引入json頭文件,以便解析JSON對象。在代碼中,我們定義了一個包含JSON字符串的變量json_string,這個字符串包含三個屬性:name,age和gender。

當我們使用json_loads函數解析JSON字符串時,如果出現錯誤,我們將輸出錯誤信息。接下來,我們使用json_object_foreach函數迭代JSON對象的每個屬性。對于每個屬性,我們輸出它的名稱和值。

對于每個值,我們使用json_typeof函數來確定其類型。然后,我們使用相應的函數輸出它的值。

最后,我們使用json_decref函數釋放分配的內存。

這是一個簡單的C語言程序,它演示了如何遍歷JSON對象的屬性。需要注意的是,在實際應用中,我們需要對JSON進行更復雜的操作。此外,我們還需要處理JSON對象嵌套的情況。