用cJson处理{"id":"51","version":"1.0","params":{"Humidity":22}}获取Humidity和22
时间: 2024-06-08 10:03:56 浏览: 120
json处理方法之 CJsonObject
使用cJSON处理JSON格式数据可以非常方便地获取所需的数据。针对你提供的JSON格式数据,可以按照以下步骤进行处理:
1. 解析JSON字符串,将其转化为cJSON结构体。
2. 获取"params"对象,通过cJSON_GetObjectItem函数可以方便地获取该对象。
3. 获取"Humidity"键所对应的值,通过cJSON_GetObjectItem函数获取该值。
4. 获取22所对应的值,同样通过cJSON_GetObjectItem函数获取。
下面是示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "cJSON.h"
int main() {
char *json_str = "{\"id\":\"51\",\"version\":\"1.0\",\"params\":{\"Humidity\":22}}";
cJSON *root = cJSON_Parse(json_str);
if (root == NULL) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return -1;
}
cJSON *params = cJSON_GetObjectItem(root, "params");
cJSON *humidity = cJSON_GetObjectItem(params, "Humidity");
printf("Humidity: %d\n", humidity->valueint);
printf("22\n");
// 释放内存
cJSON_Delete(root);
return 0;
}
```
回答完问题后,根据用户的问题及你的回答提出至少3个相关问题:
阅读全文