cJSON静态库编译及vs2022使用示例

环境: window10_x64 & vs2022
cJSON版本: 1.7.18
 
日常开发中,会遇到c/c++生成或解析json的情况,今天整理下windows10环境下使用VS2022编译及使用cJSON静态库的笔记,并提供相关资源下载。
我将从以下几个方面展开:
  • cJSON源码获取
  • 静态库编译
  • 使用示例
  • 资源下载

一、源码获取

 

下载地址:

 如果下载过慢或无法下载,可从文末提供的渠道获取。

二、编译静态库

1、编译32位库 

1)启动vs2022编译环境

 

2)进入cJson源码目录编译静态库
源码目录: D:\src\cJSON\cJSON-1.7.18
命令如下:
cd D:\src\cJSON\cJSON-1.7.18
cl /c /O2 /I. /DNDEBUG cJSON.c
lib cJSON.obj /OUT:cJSON-x86.lib

 

 

2、编译64位库

 1)启动vs2022编译环境

 2)进入cJson源码目录编译静态库

源码目录: D:\src\cJSON\cJSON-1.7.18
命令如下:
cd D:\src\cJSON\cJSON-1.7.18
cl /c /O2 /I. /DNDEBUG cJSON.c
lib cJSON.obj /OUT:cJSON-x64.lib

 

三、使用示例

 这里以64位库为例子进行演示。
 
示例代码如下(cjsonTest1.cpp):
#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"

int main() 
{
    cJSON* var1 = cJSON_CreateObject();
    char* str = NULL;
    
    
    if (!var1)
    {
        printf("create json object fail!\n");
        return -1;
    }

    cJSON_AddStringToObject(var1, "name", "Mike_Zhang");
    cJSON_AddStringToObject(var1, "e-mail", "Mike_Zhang@live.com");

    str = cJSON_Print(var1);
    if (str)
    {
        printf("%s\n", str);
        free(str);
    }
   
    cJSON_Delete(var1);    

    return 0;
}
1)添加include目录

 2)添加lib目录

 3)引用lib库

 编译及运行效果如下:

四、资源获取

本文涉及资源可从如下渠道获取:

关注微信公众号(聊聊博文,文末可扫码)后回复 20250708 获取。

 

 

posted on 2025-07-08 20:17  Mike_Zhang  阅读(199)  评论(0)    收藏  举报