使用C语言将json字符串转为json对象
时间: 2024-05-03 22:16:55 浏览: 261
在C语言中,可以使用第三方库cJSON来将json字符串转为json对象。以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"
int main() {
char *json_string = "{\"name\":\"Jack\",\"age\":25,\"address\":{\"city\":\"New York\",\"state\":\"NY\"}}";
cJSON *json = cJSON_Parse(json_string);
if (json) {
cJSON *name = cJSON_GetObjectItem(json, "name");
cJSON *age = cJSON_GetObjectItem(json, "age");
cJSON *address = cJSON_GetObjectItem(json, "address");
cJSON *city = cJSON_GetObjectItem(address, "city");
cJSON *state = cJSON_GetObjectItem(address, "state");
printf("Name: %s\n", name->valuestring);
printf("Age: %d\n", age->valueint);
printf("Address: %s, %s\n", city->valuestring, state->valuestring);
cJSON_Delete(json);
} else {
printf("Failed to parse JSON.\n");
}
return 0;
}
```
在这个示例中,我们首先定义了一个json字符串,然后使用cJSON_Parse函数将其转为json对象。接着,我们使用cJSON_GetObjectItem函数获取json对象中的各个字段,并打印它们的值。最后,我们使用cJSON_Delete函数释放掉json对象的内存。
阅读全文