色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 中使用json

錢淋西2年前9瀏覽0評論

JSON(JavaScript Object Notation,JavaScript對象表示法)是一種輕量級數據交換格式,其本質上是一種基于文本的數據交換協議,能夠輕松地在不同語言之間進行數據交換。

C語言有許多JSON解析庫,比如CJSON、Jansson等。其中常用的CJSON非常簡單易用,只需要一個cJSON.h頭文件即可開始使用。

// 示例,解析JSON字符串
#include <stdio.h>
#include <cJSON.h>
int main() {
char* json_string = "{ \"message\": \"hello json\" }"; // JSON字符串
cJSON *json = cJSON_Parse(json_string); // 解析JSON字符串
if (json == NULL) {
const char *error_ptr = cJSON_GetErrorPtr(); // 獲取解析錯誤指針
if (error_ptr != NULL) {
printf("Error before: %s\n", error_ptr); // 打印錯誤信息
}
return 1;
}
cJSON *message = cJSON_GetObjectItemCaseSensitive(json, "message"); // 獲取JSON鍵值
printf("%s\n", message->valuestring); // 打印鍵值
cJSON_Delete(json); // 釋放內存
return 0;
}

在程序中使用JSON字符串,也可以通過CJSON庫將C語言數據結構轉換成JSON字符串。下面是一個示例:

// 示例,生成JSON字符串
#include <stdio.h>
#include <cJSON.h>
int main() {
// 創建JSON對象
cJSON *json = cJSON_CreateObject();
cJSON_AddStringToObject(json, "name", "json");
cJSON_AddNumberToObject(json, "age", 5);
// 將JSON對象轉換成字符串
char* json_string = cJSON_Print(json);
printf("%s\n", json_string);
cJSON_Delete(json); // 釋放內存
return 0;
}

總結來說,使用C語言處理JSON數據非常簡單,只需要引入相關的JSON解析庫,便可以完成JSON字符串的解析和生成,為數據交換帶來極大便利。