cJSON_CreateIntArray
时间: 2024-09-23 18:03:32 浏览: 59
cJSON_cjson_
cJSON是一个轻量级的C语言库,用于解析和生成JSON数据。`cJSON_CreateIntArray`是cJSON提供的一个函数,用于创建一个整数数组(integer array)。这个函数通常用于将JSON字符串中的整数列表转换成C语言中的数组结构。
当你需要从JSON数据中读取一个包含整数的数组,并在C代码中处理它们时,可以这样做:
```c
#include <cjson/cjson.h>
// 假设你已经有了一个JSON字符串
const char* jsonString = "{\"intArray\": [1, 2, 3, 4, 5]}";
// 使用cJSON_Parse解析JSON字符串
cJSON* json = cJSON_Parse(jsonString);
if (!json) {
// 处理解析错误
}
// 现在获取"intArray"字段并创建整数数组
cJSON* intArrayJson = cJSON_GetObjectItem(json, "intArray");
cJSON_Array *intArray = cJSON_GetArray(intArrayJson);
// 创建整数数组
int** intArrayC = cJSON_malloc_array(cJSON_GetArraySize(intArray), sizeof(int));
for (size_t i = 0; i < cJSON_GetArraySize(intArray); i++) {
int value = cJSON_GetNumericValue(cJSON_GetArrayItem(intArray, i));
intArrayC[i] = &value;
}
// ...后续操作,如处理数组
// 释放内存
for (size_t i = 0; i < cJSON_GetArraySize(intArray); i++) {
cJSON_Free(intArrayC[i]);
}
cJSON_Free(intArrayC);
cJSON_Delete(json);
```
阅读全文