C Blob JSON 是一種常用的數據交互格式,它可以方便地對數據進行序列化和反序列化。C Blob JSON 的主要特點是其可讀性和可擴展性。
在 C 語言中,使用 C Blob JSON 可以方便地將數據結構轉換為 JSON 字符串,并且可以將 JSON 字符串轉換回 C 語言的數據結構。C Blob JSON 使用的是標準的 JSON 語法,因此可以與其他編程語言的 JSON 庫進行兼容。
#include <stdio.h> #include <stdlib.h> #include <stdbool.h> #include <cjson/cJSON.h> int main() { cJSON *root = cJSON_CreateObject(); // 創建 C Blob JSON 對象 cJSON_AddStringToObject(root, "name", "John"); cJSON_AddNumberToObject(root, "age", 30); cJSON_AddBoolToObject(root, "married", false); char *json_str = cJSON_PrintUnformatted(root); // 將 C Blob JSON 對象轉換為 JSON 字符串 printf("%s\n", json_str); cJSON *json_root = cJSON_Parse(json_str); // 將 JSON 字符串轉換為 C Blob JSON 對象 printf("My name is %s. I'm %d years old. Married: %s.\n", cJSON_GetObjectItem(json_root, "name")->valuestring, cJSON_GetObjectItem(json_root, "age")->valueint, cJSON_GetObjectItem(json_root, "married")->valueint ? "true" : "false"); cJSON_Delete(root); // 釋放 C Blob JSON 對象內存 cJSON_Delete(json_root); // 釋放 JSON 字符串對應的 C Blob JSON 對象內存 free(json_str); // 釋放 JSON 字符串內存 return 0; }
在上述代碼中,使用了 cJSON 庫來實現 C Blob JSON 數據結構的序列化和反序列化。cJSON_CreateObject() 函數用于創建一個 C Blob JSON 對象。CJSON_AddXXXToObject() 函數用于往 C Blob JSON 對象中添加屬性。cJSON_PrintUnformatted() 函數用于將 C Blob JSON 對象轉換為 JSON 字符串。cJSON_Parse() 函數用于將 JSON 字符串轉換為 C Blob JSON 對象。
C Blob JSON 的可擴展性是指,除了支持原始數據類型和數組之外,還可以支持對象等更復雜的數據結構。這使得 C Blob JSON 可以處理更為復雜的數據。
下一篇mysql分號轉義