将结构体数组转换成json
时间: 2023-06-01 17:04:50 浏览: 115
js实现数组转换成json
好的,这个问题可以回答。结构体数组转成 JSON 的方法有很多种,下面是一种示例:
1.定义一个结构体:
```c
typedef struct {
int age;
char name[20];
}Person;
```
2.定义一个结构体数组:
```c
Person arr[3] = {{18, "Tom"}, {20, "Jack"}, {22, "Mary"}};
```
3.使用 cJSON 库将结构体数组转成 JSON:
```c
cJSON *root = cJSON_CreateArray();
int i;
for(i=0; i<3; i++){
cJSON *person = cJSON_CreateObject();
cJSON_AddNumberToObject(person, "age", arr[i].age);
cJSON_AddStringToObject(person, "name", arr[i].name);
cJSON_AddItemToArray(root, person);
}
char *jsonStr = cJSON_Print(root);
printf("JSON String:\n%s", jsonStr);
```
结果如下:
```json
[
{
"age": 18,
"name": "Tom"
},
{
"age": 20,
"name": "Jack"
},
{
"age": 22,
"name": "Mary"
}
]
```
阅读全文