在日常開發中,我們經常需要將 C 語言中的數據結構和變量轉換為 JSON 格式的字符串,以便于后續的數據傳輸和處理。C 語言本身并不支持 JSON 格式,因此我們可以使用第三方的 JSON 庫來進行轉換。
// 以 cJSON 庫為例 #include <stdio.h> #include <cjson/cJSON.h> int main(void) { cJSON *root = cJSON_CreateObject(); // 創建 JSON 對象 cJSON_AddStringToObject(root, "name", "john"); // 添加字符串屬性 cJSON_AddNumberToObject(root, "age", 18); // 添加數字屬性 char *jsonStr = cJSON_Print(root); // 將 JSON 對象轉換為字符串 printf("%s", jsonStr); cJSON_Delete(root); // 釋放 JSON 對象的內存 free(jsonStr); // 釋放字符串的內存 return 0; }
在上述的代碼中,我們首先使用 cJSON 庫創建了一個 JSON 對象,并添加了兩個屬性:一個字符串屬性 name 和一個數字屬性 age。然后我們使用 cJSON_Print 函數將這個 JSON 對象轉換為字符串,并將其打印出來。最后,我們需要手動釋放 JSON 對象和字符串的內存。
除了添加字符串和數字屬性之外,cJSON 庫還支持添加數組、嵌套對象、布爾值等不同類型的屬性。更多的使用方法可以參考 cJSON 的官方文檔。