C JSON list 對象在轉換時很常見,下面我們來看一下該如何進行轉換。
首先,我們需要包含JSON-C庫,并且有一個JSON-C list對象需要被轉換成一個C數組。
#include#include #include int main() { struct json_object *jobj; json_object *jarray; enum json_type type; int arraylen, i; const char *json_string = "{\"name\": \"apple\", \"price\": 0.5, \"quantities\": [10, 20, 30]}"; jobj = json_tokener_parse(json_string); json_object_object_get_ex(jobj, "quantities", &jarray); arraylen = json_object_array_length(jarray); if (arraylen >0) { int arr[arraylen]; for(i=0; i 代碼中,我們使用json_tokener_parse()函數將JSON字符串解析為JSON-C對象。我們獲取JSON對象中的列表數組,并使用json_object_array_length() 函數獲取列表的長度。然后,我們遍歷數組中的所有元素,并將每個元素轉換為C數據類型,根據元素類型適當地進行轉換。
最后,我們在這個簡單的例子中,將數組打印出來。
如果您想進行更復雜的操作,例如將JSON對象轉換為對象模型或將對象模型轉換為JSON,可以使用更強大的開源JSON庫。