當使用C語言處理JSON數(shù)據(jù)時,我們通常需要將JSON字符串轉換為C語言中的數(shù)據(jù)結構。在這個過程中,我們需要解析JSON字符串并將其賦值給C語言中的變量或數(shù)據(jù)結構。
對于JSON字符串數(shù)組,我們可以定義一個C語言中的char類型數(shù)組,使用字符串指針或二維字符數(shù)組進行賦值。同時,我們需要使用第三方庫進行JSON字符串的解析。
//使用 cJSON 解析 JSON 字符串 #include "cJSON/cJSON.h" int main() { //定義 JSON 字符串數(shù)組 char* jsons[] = {"{\"name\":\"Tom\",\"age\":21}","{\"name\":\"Jerry\",\"age\":19}"}; //獲取 JSON 數(shù)組的長度 int jsonsLength = sizeof(jsons) / sizeof(jsons[0]); //循環(huán)遍歷 JSON 字符串數(shù)組,解析每個 JSON 字符串 for(int i=0; i<jsonsLength; i++) { cJSON *json = cJSON_Parse(jsons[i]); if(json != NULL) { //從 JSON 對象中獲取值并進行賦值 char* name = cJSON_GetObjectItem(json, "name")->valuestring; int age = cJSON_GetObjectItem(json, "age")->valueint; //輸出獲取到的值 printf("name: %s, age: %d\n", name, age); //釋放 cJSON 結構體所占用的內(nèi)存 cJSON_Delete(json); } } return 0; }
通過上述代碼,我們可以很方便地處理JSON字符串數(shù)組,并將其轉換為C語言中的數(shù)據(jù)結構,以便進行后續(xù)的處理。