在C語言中,我們經常需要用到鏈表來實現各種不同的數據結構和算法。然而,當我們需要將鏈表轉換成JSON格式來進行網絡傳輸或存儲時,就需要使用到cJSON這個庫。
cJSON *root = cJSON_CreateObject(); // 創建JSON對象 cJSON *list = cJSON_CreateArray(); // 創建JSON數組 struct ListNode *p = head; // 遍歷鏈表 while(p){ cJSON *item = cJSON_CreateObject(); // 創建JSON對象 cJSON_AddItemToObject(item, "val", cJSON_CreateNumber(p->val)); // 添加鍵值對 cJSON_AddItemToArray(list, item); // 將JSON對象添加到數組中 p = p->next; // 遍歷下一個節點 } cJSON_AddItemToObject(root, "list", list); // 將數組添加到根對象中 char *res = cJSON_Print(root); // 將JSON字符串化輸出
此處我們使用了cJSON中的函數來創建JSON對象、創建JSON數組、添加鍵值對、向數組中添加對象,以及將JSON字符串化輸出。通過這些函數的使用,我們可以方便地將鏈表轉化為JSON格式,以便于進行網絡傳輸和存儲。