在C語言中,處理JSON數(shù)據(jù)的時候,經(jīng)常需要將JSON數(shù)據(jù)轉(zhuǎn)換成數(shù)組。下面就介紹一下如何將JSON數(shù)據(jù)轉(zhuǎn)換成C語言數(shù)組。
首先,需要用到一個第三方庫。這個庫就是cJSON。cJSON是一種輕量級的JSON解析庫,它可以方便地解析JSON數(shù)據(jù),并將數(shù)據(jù)轉(zhuǎn)換為C語言數(shù)據(jù)類型。在使用之前,需要先使用cJSON庫對JSON字符串進行解析。
// 聲明json字符串 char *json = "{\"name\":\"Tom\", \"age\":18, \"score\":{\"math\":90, \"english\":95}}"; // 解析json字符串 cJSON *root = cJSON_Parse(json);
然后就可以將JSON數(shù)據(jù)轉(zhuǎn)換成數(shù)組了。
// 訪問score對象 cJSON *score = cJSON_GetObjectItem(root, "score"); // 訪問math成員 cJSON *math = cJSON_GetObjectItem(score, "math"); // 訪問english成員 cJSON *english = cJSON_GetObjectItem(score, "english"); // 定義C語言數(shù)組 int scoreArray[] = {math->valueint, english->valueint};
以上就是將JSON數(shù)據(jù)轉(zhuǎn)換成C語言數(shù)組的完整代碼。