用c语言来解决上面的问题
时间: 2024-12-17 22:34:05 浏览: 1
C语言实现解决汉诺塔问题
在C语言中,处理JSON数据通常需要借助第三方库,比如`json-c`或`libjson`。这里假设我们已经有一个JSON对象字符串,我们可以使用`json_tokener.h`库来进行解析。以下是使用`json-c`库的示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <json-c/json.h>
int main() {
const char *json_str = "{\"serial\": \"123456\", \"action\": \"relay\", \"message\": {\"num\": 1, \"delay\": 10000}}";
json_object *root = json_tokener_parse(json_str);
if (!root) {
fprintf(stderr, "Failed to parse JSON string\n");
return -1;
}
json_object *message_obj = json_object_object_get(root, "message"); // 获取message对象
int num = json_object_get_int(message_obj, "num"); // 提取num值
printf("Num value: %d\n", num);
json_object_put(root); // 释放内存
return 0;
}
```
这段代码首先解析JSON字符串,然后从根节点获取`message`对象,再从中提取`num`的整数值。
阅读全文