租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

C语言cjson的用法是什么,c语言ch

发布时间:2023-12-23 22:18:18

C语言cjson的用法是甚么

CJSON是一个轻量级的JSON解析库,用于解析和生成JSON数据。

使用CJSON需要以下步骤:

  1. 定义一个 cJSON 结构体指针来存储解析后的 JSON 数据。

    cJSON *json;
    
  2. 解析 JSON 字符串,将其转换为 cJSON 结构体对象。

    json = cJSON_Parse(json_string);
    
  3. 通过 cJSON 提供的 API 来访问和操作 JSON 数据。 例如,可以通过以下方式获得 JSON 对象中的字符串:

    cJSON *json_object = cJSON_GetObjectItem(json, "key");
    const char *value = cJSON_GetStringValue(json_object);
    
  4. 释放 cJSON 对象。

    cJSON_Delete(json);
    

另外,CJSON 还提供了一些其他的 API,用于生成 JSON 数据,如创建 JSON 对象、数组、字符串、数字等。

以下是一个简单的例子,演示了怎样使用 CJSON 解析和生成 JSON 数据:

#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"

int main() {
    const char *json_string = "{"name":"John", "age":30, "city":"New York"}";

    cJSON *json = cJSON_Parse(json_string);
    if (json == NULL) {
        printf("Error parsing JSON.
");
        return 1;
    }

    cJSON *name = cJSON_GetObjectItem(json, "name");
    cJSON *age = cJSON_GetObjectItem(json, "age");
    cJSON *city = cJSON_GetObjectItem(json, "city");

    printf("Name: %s
", name->valuestring);
    printf("Age: %d
", age->valueint);
    printf("City: %s
", city->valuestring);

    cJSON_Delete(json);
    return 0;
}

此程序将输出:

Name: John
Age: 30
City: New York

以上就是 CJSON 的基本用法。你可以根据实际需求使用 CJSON 提供的其他 API 来解析和生成复杂的 JSON 数据。