当前位置:网站首页 > Vue.js开发 > 正文

cjson(CJSON遍历json所有节点)



在做的项目需要发JSON格式的消息并解析,因此学习了利用cJSON解析JSON格式,该格式易于人阅读和编写。同时也易于机器解析和生成。

语法:键 / 值

1、以 { 开始,以 } 结束,允许嵌套使用

2、每个键和值成对出现,并使用:分隔。如"age"=23

3、键值对之间用 ,分隔

值的多种类型:

字符串:用 " "

数字:整数或浮点数都直接表示

数组:用[ ]

布尔值:fault、true

gitee仓库:https://gitee.com/peng-jiaweibabe/c-json

cJSON的.c和.h文件,使用的时候,只需要将这两个文件复制到工程目录,然后包含头文件cJSON.h即可。即#include "cJSON.h"

如若出现该情况,链接math库即可

CJSON_PUBLIC(cJSON *) cJSON_Parse(const char *value)

函数功能:将一个JSON字符串,按照cJSON结构体的结构序列化整个数据包,并在堆中开辟一块内存存储cJSON结构体

返回值:成功返回一个指向内存块中的cJSON的指针,失败返回NULL

CJSON_PUBLIC(char *) cJSON_Print(const cJSON *item) //按JSON格式打印
  
CJSON_PUBLIC(char *) cJSON_PrintUnformatted(const cJSON *item) //不按JSON格式打印

函数功能:将整条链表中存放的JSON信息输出到一个字符串中,使用时只需用一个字符串指针(char *)接收该函数返回的指针地址即可。

返回值:成功返回一个char*指针并指向位于堆中JSON字符串,失败返回NULL

CJSON_PUBLIC(void) cJSON_Delete(cJSON *c)

函数功能:释放位于堆中cJSON结构体内存

返回值:无

(cJSON *) cJSON_GetObjectItem(const cJSON * const object, const char * const string)

函数功能:根据键值对的名称从链表中取出对应的值,返回该键值对(链表节点)的地址

返回值:成功返回一个指向内存块中的cJSON的指针,失败返回NULL

结果:

结果:

结果:

三层键值

结果:

到此这篇关于C语言利用cJSON解析JSON格式的文章就介绍到这了,更多相关cJSON解析JSON格式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

到此这篇cjson(CJSON遍历json所有节点)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • vue2关闭eslint(vue 关闭eslint)2024-12-15 10:36:09
  • 跨域解决方案js(nginx跨域解决方案)2024-12-15 10:36:09
  • 卡巴斯基更新源(卡巴斯基7.0)2024-12-15 10:36:09
  • vuejs插槽(vue3.0 插槽)2024-12-15 10:36:09
  • map转json数组(map转json字符串)2024-12-15 10:36:09
  • dos2unix安装包(如何安装dos6.22)2024-12-15 10:36:09
  • redhat6.6安装教程(redhat6.0安装)2024-12-15 10:36:09
  • auto可以说明全局变量吗(autojs定义全局变量)2024-12-15 10:36:09
  • ubuntu18.04源地址(ubuntu21.04源)2024-12-15 10:36:09
  • k8s版本升级(k8s版本升级1.27)2024-12-15 10:36:09
  • 全屏图片