cJSON学习笔记 续集
void create_single_number(void) {
cJSON *root;
char *out;
int value = 24;
root = cJSON_CreateObject(); // 创建根
cJSON_AddItemToObject(root, "value", cJSON_CreateNumber(value));
// 打印并释放
out = cJSON_Print(root); cJSON_Delete(root); printf("%s\n",out); free(out);
// 控制台输出
#if 0
{
"value": 24
}
#endif
}
void create_single_string(void) {
cJSON *root;
char *out;
char *name = "xukai871105";
root = cJSON_CreateObject(); // 创建根
// 方法 使用cJSON_AddItemToObject,推荐使用
cJSON_AddItemToObject(root, "name", cJSON_CreateString(name));
// 打印并释放
out = cJSON_Print(root); cJSON_Delete(root); printf("%s\n",out); free(out);
// 控制台输出
#if 0
{
"name": "xukai871105"
}
#endif
}
void create_bool(void) {
cJSON *root;
char *out;
root = cJSON_CreateObject(); // 创建根
cJSON_AddItemToObject(root, "success", cJSON_CreateFalse());
// 打印并释放
out = cJSON_Print(root); cJSON_Delete(root); printf("%s\n",out); free(out);
// 控制台输出
#if 0
{
"success": false
}
#endif
}
void create_simple(void) {
cJSON *root;
char *out;
int list[4] = {5,6,7,8};
root = cJSON_CreateObject(); // 创建根
cJSON_AddItemToObject(root, "lists", cJSON_CreateIntArray(list, 4));
// 打印并释放
out = cJSON_Print(root); cJSON_Delete(root); printf("%s\n",out); free(out);
// 控制台输出
#if 0
{
"lists": [5, 6, 7, 8]
}
#endif
}
void create_complex(void) {
cJSON *root, *rows, *row;
char *out;
int i = 0;
char *title[3] = { "树莓派学习笔记——索引博文",
"树莓派学习笔记——GPIO功能学习",
"物联网学习笔记——索引博文"};
char *url[3] = { "http://blog.csdn.net/xukai871105/article/details/23115627",
"http://blog.csdn.net/xukai871105/article/details/12684617",
"http://blog.csdn.net/xukai871105/article/details/23366187"};
root = cJSON_CreateObject(); // 创建根
cJSON_AddNumberToObject(root, "total", 3);
// 在object中加入array
cJSON_AddItemToObject(root, "rows", rows = cJSON_CreateArray());
for(i = 0; i < 3; i++) {
// 在array中加入object
cJSON_AddItemToArray(rows, row = cJSON_CreateObject());
cJSON_AddItemToObject(row, "title", cJSON_CreateString(title[i]));
cJSON_AddItemToObject(row, "url", cJSON_CreateString(url[i]));
}
// 打印并释放
out = cJSON_Print(root); cJSON_Delete(root); printf("%s\n",out); free(out);
// 控制台输出
#if 0
{
"total": 3,
"rows": [{
"title": "树莓派学习笔记——索引博文",
"url": "http://blog.csdn.net/xukai871105/article/details/23115627"
}, {
"title": "树莓派学习笔记——GPIO功能学习",
"url": "http://blog.csdn.net/xukai871105/article/details/12684617"
}, {
"title": "物联网学习笔记——索引博文",
"url": "http://blog.csdn.net/xukai871105/article/details/23366187"
}]
}
#endif
}
cJSON学习笔记 续集的更多相关文章
- cJSON学习笔记
1.JSON格式简述 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.它基于JavaScript(Standa ...
- turtle学习笔记续集
turtle(海龟)是Python重要的标准库之一,它能够进行基本的图形绘制.turtle图形绘制的概念诞生于1969年,成功应用于LOGO编程语言. turtle库绘制图形有一个基本框架:一个小海龟 ...
- DirectX 11游戏编程学习笔记之1: 开场白
本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com 这是我之前的博客系列"DirectX9.0c游戏开发手记之'龙书'第二版学习笔记 ...
- tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)
续集请点击我:tensorflow学习笔记——使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
随机推荐
- Java数值类型之间转换
Java之间的数值转换如图所示,实心箭头代表无数据丢失,虚线箭头代表可能丢失 例如:123456789是一个大的整数,包含的位数比float类型能够表达的位数多,但这个数转换为float类型时,将会得 ...
- windows文件映射
0x01 使用文件映射实现共享内存. 用内存映射文件实现进程间的通讯:Windows中的内存映射文件的机制为我们高效地操作文件提供了一种途径,它允许我们在进程中保留一段内存区域,把硬盘或页文件上的目标 ...
- web项目与jsp有关的三个jar的依赖
<!-- jsp --> <dependency> <groupId>javax.servlet</groupId> <artifactId> ...
- 高级数据类型--列表[list]
List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组,专门用于存储 一串 信息,列表用 [] 定义,数据 之间使用 , 分隔,列表的 索引 从 0 开始. nam ...
- Python 基础数据类型相互转换
字符串,数字,列表 ,元祖,字典 化相互转化 1 Int 与 str 之间如何转化,转换的结果是什么?有没有条件? #str(int型)可以转化为str 该过程没有条件 #字符串转化为 ...
- ChinaCock界面控件介绍-TCCYearMonthSelector
Delphi原生控件支持日期的选择,但对于只选择年月的情况,则没有好的实现.TCCYearMonthSelector正是为解决这个问题而产生的.看看运行效果图: 用法一如即往的简单,这是一个不可视控件 ...
- SpringBoot集成Swagger2实现Restful(类型转换错误解决办法)
1.pom.xml增加依赖包 <dependency> <groupId>io.springfox</groupId> <artifactId>spri ...
- element.dataset API
不久之前我向大家展示了非常有用的classList API,它是一种HTML5里提供的原生的对页面元素的CSS类进行增.删改的接口,完全可以替代jQuery里的那些CSS类操作方法.而另外一个非常有用 ...
- Symbol -- JavaScript 语言的第七种数据类型
ES5 的对象属性名都是字符串,这容易造成属性名的冲突.比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突.如果有一种机制,保证 ...
- 微软Power BI 每月功能更新系列——11月Power BI 新功能学习
Power BI Desktop11月产品功能摘要 本月Power BI Desktop 有一个大规模的更新.现在,通常可以使用复合模型在一个模型中将直接查询和导入源组合在一起.UserVoice上的 ...