cJSON使用_介绍

2024-05-27 09:32
文章标签 使用 介绍 cjson

本文主要是介绍cJSON使用_介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1 简介
  • 2下载及编译
    • 2.1 cJSON库的下载地址:
    • 2.2 编译
  • 3 重要函数简介
    • 3.1 cJSON_Parse
    • 3.2 cJSON_Delete
    • 3.3 cJSON_Print
    • 3.4 cJSON_GetObjectItem
    • 3.5 cJSON_CreateObject
    • 3.6 cJSON_CreateNumber
    • 3.7 cJSON_CreateString
    • 3.8 cJSON_CreateArray
    • 3.9 cJSON_AddItemToObject
    • 3.10 cJSON_AddItemToArray

1 简介

工作中经常使用JSON字符串进行数据传输,所以需要构造或者解析json数据,这里主要对开源的cJSON做个简单介绍,防止遗忘。

2下载及编译

2.1 cJSON库的下载地址:

https://github.com/DaveGamble/cJSON

2.2 编译

我们可以直接将cJSON编译为库或者将文件”cJSON.h” “cJSON.c”包含到自己的工程中即可。

在https://github.com/DaveGamble/cJSON 的README中,有详细介绍cJSON的用法,并且在下载的源码中有测试例程test.c,可以进行参考。

3 重要函数简介

3.1 cJSON_Parse

函数原型:

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

函数参数:

value:json字符串

函数返回:

返回json对象,弱失败,则返回NULL

说明:
此函数主要对传进去的数据进行解析,并返回json对象

3.2 cJSON_Delete

函数原型:

CJSON_PUBLIC(void) cJSON_Delete(cJSON *c);

函数参数:

c: json对象

函数返回:

说明:
当使用完json相关的指针后,就调用此函数,释放内存

3.3 cJSON_Print

函数原型:

CJSON_PUBLIC(char *) cJSON_Print(const cJSON *item);

函数参数:

item:json对象

函数返回:

指向json字符串的地址指针

说明:
将json结构输出为字符串的形式

3.4 cJSON_GetObjectItem

函数原型:

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

函数参数:

object:json对象指针
string:要获取的字符串

函数返回:

成功:返回指向json结构体指针
失败:NULL

说明:
获取json字符串字段值

3.5 cJSON_CreateObject

函数原型:

CJSON_PUBLIC(cJSON *) cJSON_CreateObject(void);

函数参数:

函数返回:

说明:
创建一个json对象

3.6 cJSON_CreateNumber

函数原型:

CJSON_PUBLIC(cJSON *) cJSON_CreateNumber(double num);

函数参数:

number:值

函数返回:

被创建的值的json对象

说明:
当我们想向某个json对象增加值的时候,需要先调用这个函数创建这个值的对象

3.7 cJSON_CreateString

函数原型:

CJSON_PUBLIC(cJSON *) cJSON_CreateString(const char *string);

函数参数:

string:字符串值

函数返回:

被创建的值的json对象

说明:
当我们想向某个json对象增加字符串值的时候,需要先调用这个函数创建这个值的对象

3.8 cJSON_CreateArray

函数原型:

CJSON_PUBLIC(cJSON *) cJSON_CreateArray(void);

函数参数:

函数返回:

创建数组的json指针对象

说明:
当向某个json对象中增加数组的时候,调用此函数创建数组指针

3.9 cJSON_AddItemToObject

函数原型:

CJSON_PUBLIC(void) cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item);

函数参数:

object: json对象
string: 要加入的元素的名字
item: 要加入元素的json指针

函数返回:

说明:
向object中加入一个元素

3.10 cJSON_AddItemToArray

函数原型:

CJSON_PUBLIC(void) cJSON_AddItemToArray(cJSON *array, cJSON *item);

函数参数:

array: json数组对象指针
item:要加入数组对象的对象指针

函数返回:

说明:
向数组对象中加入一个新的元素

这篇关于cJSON使用_介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1007088

相关文章

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Python ORM神器之SQLAlchemy基本使用完全指南

《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送