在進行C語言編程過程中,經常需要將對象數組轉換成JSON字符串數組,以便于網絡傳輸或其他數據處理。
下面給出一個示例代碼:
#include <stdio.h> #include <jansson.h> typedef struct Student{ char name[20]; int age; int score; }Student; void studentToJson(Student* s, char* jsonStr){ json_t *obj = json_object(); json_object_set_new(obj,"name",json_string(s->name)); json_object_set_new(obj,"age",json_integer(s->age)); json_object_set_new(obj,"score",json_integer(s->score)); json_dumpb(obj,jsonStr,strlen(jsonStr),JSON_INDENT(4)); json_decref(obj); } int main(){ Student students[3] = { {"Tom",23,89}, {"Jerry",20,78}, {"Leo",25,92} }; char jsonStr[100]; for(int i = 0; i < 3; i++){ studentToJson(&students[i],jsonStr); printf("%s\n",jsonStr); } return 0; }
上述代碼中使用了開源庫`jansson`,它是一個用于解析和生成JSON數據格式的C語言庫。
首先定義了一個`Student`結構體,里面包含`name`、`age`和`score`三個成員變量。
然后定義了一個`studentToJson`函數,它接受一個`Student`結構體指針和一個字符數組指針作為參數,將結構體轉換成JSON字符串并存儲到指定的字符數組中。
在`main`函數中創建了一個`Student`類型的數組,并依次將每個數組元素傳遞給`studentToJson`函數進行轉換輸出。
以上是C語言對象數組轉換成JSON字符串數組的實現代碼說明,這個方法在實際應用中可能存在一些限制和不足,需要根據具體場景和需求進行修改和擴展。
下一篇vue 直播插件下載