C和JSON是兩種非常常用的編程語言和數據格式。C是一種低級的編程語言,廣泛應用于系統編程、嵌入式設備和高性能計算。JSON是一種輕量級的數據交換格式,易于閱讀和編寫。在C中使用JSON序列化是一種非常常見的操作,它可以將C中的各種數據類型轉換為JSON格式的字符串。
// 序列化一個c結構體到json字符串 #include#include #include #include "cJSON.h" #define JSON_STR_LEN 4096 typedef struct person_t { char name[32]; int age; char address[64]; } person_t; int main() { person_t person; strcpy(person.name, "張三"); person.age = 25; strcpy(person.address, "北京市海淀區"); cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", person.name); cJSON_AddNumberToObject(root, "age", person.age); cJSON_AddStringToObject(root, "address", person.address); char *json_string = cJSON_Print(root); printf("JSON string: %s\n", json_string); cJSON_Delete(root); free(json_string); return 0; }
上述代碼中,我們使用了一個叫做
需要注意的是,使用這個庫需要將它的頭文件和源文件包含到你的項目中,同時在編譯時鏈接cJSON庫。
// 編譯命令 gcc -o main main.c cJSON.c
總的來說,C和JSON在各自的領域都有非常廣泛的應用,使用C來序列化JSON是一種很常見的操作,我們可以借助第三方庫來完成這個過程。