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

c語言 讀json文件

在C語言中,讀取JSON文件十分常見。以下是一個(gè)簡單的例子,演示了如何使用C語言讀取JSON文件并提取里面的某些信息。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
int main(void) {
json_t *root;
json_error_t error;
// 打開文件,讀取JSON
FILE *file = fopen("example.json", "r");
if (!file) {
fprintf(stderr, "Failed to open file\n");
return 1;
}
// 解析JSON
root = json_loadf(file, 0, &error);
if (!root) {
fprintf(stderr, "Failed to parse JSON: %s\n", error.text);
fclose(file);
return 1;
}
// 提取信息
json_t *name = json_object_get(root, "name");
printf("Name: %s\n", json_string_value(name));
json_t *age = json_object_get(root, "age");
printf("Age: %d\n", json_integer_value(age));
json_t *hobbies = json_object_get(root, "hobbies");
int i;
printf("Hobbies:\n");
for (i = 0; i < json_array_size(hobbies); i++) {
json_t *hobby = json_array_get(hobbies, i);
printf(" - %s\n", json_string_value(hobby));
}
// 清理內(nèi)存
json_decref(root);
fclose(file);
return 0;
}

上面的代碼首先使用了jansson庫,這個(gè)庫是一個(gè)開源的C語言JSON解析器和生成器。程序首先打開JSON文件,然后使用json_loadf()函數(shù)解析JSON文件并將其存儲(chǔ)在json_t結(jié)構(gòu)體中。

一旦JSON文件被解析并存儲(chǔ)在json_t結(jié)構(gòu)體中,代碼可以使用json_object_get()函數(shù)從中提取信息。例如上面的代碼中,我們提取了名字、年齡和愛好信息。

最后,一定要記得釋放內(nèi)存,清理使用過的json_t結(jié)構(gòu)體!為此,我們使用了json_decref()函數(shù)。此外,我們還關(guān)閉了打開的文件。

以上這個(gè)例子雖然簡單,但它展示了如何使用C語言讀取JSON文件以及如何從中提取信息。如果想要進(jìn)一步學(xué)習(xí)C語言和JSON,請(qǐng)參考jansson庫的官方文檔。