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

c json轉類

錢斌斌2年前8瀏覽0評論

C JSON轉類是一種將JSON格式的數據轉換為類對象的方法。在C語言中,JSON格式的數據通常以字符串的形式存在,為了方便地處理這些數據,需要將其轉換為類對象。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
//定義類
typedef struct {
char *name;
int age;
} Person;
//將json字符串轉換成類對象
Person *json_to_person(const char *json_str) {
Person *person = NULL;
json_t *root;
json_error_t error;
root = json_loads(json_str, 0, &error);
if(!root) {
fprintf(stderr, "error: on line %d: %s\n", error.line, error.text);
exit(1);    
}
person = (Person*)malloc(sizeof(Person));
person->name = strdup(json_string_value(json_object_get(root, "name")));
person->age = json_integer_value(json_object_get(root, "age"));
json_decref(root);
return person;
}
int main() {
const char *json_str = "{\"name\":\"Tom\",\"age\":22}";
Person *person = NULL;
person = json_to_person(json_str);
printf("name:%s, age:%d\n", person->name, person->age);
free(person->name);
free(person);
return 0;
}

在上述例子中,首先定義了一個名為Person的結構體,其中包含了兩個成員變量name和age。接著,定義了一個函數json_to_person,該函數接收一個json字符串作為參數。在函數中使用jansson庫中的json_loads函數將json字符串轉換為json_t對象。然后,將json_t對象中的內容轉換為Person對象并返回

最后,在main函數中調用了json_to_person函數,將json字符串轉換為Person對象,并輸出其中的成員變量。完成后,需要釋放Person對象中的內存。