在C語言中,可以使用第三方庫或者手寫代碼將JSON數據轉為數組。以下是手寫代碼的示例:
#include <stdio.h> #include <string.h> #include <stdlib.h> char* json = "{ 'name': 'Tom', 'age': 20, 'scores': [80, 90, 75] }"; int main() { int scores[3]; char* str = strstr(json, "["); char* end = strstr(str, "]"); str++; int i = 0; while (str< end) { if (*str >= '0' && *str<= '9') { scores[i] = atoi(str); i++; } str++; } printf("The scores are: %d, %d, %d", scores[0], scores[1], scores[2]); return 0; }
上述代碼中,我們首先定義了一個JSON字符串,并聲明了一個整型數組用于存儲JSON中的"score"字段值。然后,我們使用C語言中的字符串查找和字符串轉整型等基本操作逐步解析該JSON字符串,并將每個分數放入數組中。最后,我們打印出該數組中的每個元素。
當然,如果需要解析更復雜的JSON數據,我們也可以使用第三方庫,例如json-c和jansson等。這些庫提供了更多的API和方法,使得我們能夠更輕松地處理JSON數據。