C語言中,處理JSON數據格式的轉換,通常需要借助第三方庫來實現,比如cJSON庫。該庫可以將JSON數據格式與C語言中的結構體進行相互轉換,方便C語言程序處理JSON數據。
// 示例代碼: #include#include #include "cJSON.h" typedef struct student { char name[10]; int age; char major[20]; } Student; int main() { char *jsonStr = "{\"name\":\"Bob\",\"age\":20,\"major\":\"Computer Science\"}"; cJSON *json = cJSON_Parse(jsonStr); if (!json) { printf("Error before: %s\n", cJSON_GetErrorPtr()); return 1; } Student *stu = (Student *) malloc(sizeof(Student)); strcpy(stu->name, cJSON_GetObjectItem(json, "name")->valuestring); stu->age = cJSON_GetObjectItem(json, "age")->valueint; strcpy(stu->major, cJSON_GetObjectItem(json, "major")->valuestring); printf("Student name: %s\n", stu->name); printf("Student age: %d\n", stu->age); printf("Student major: %s\n", stu->major); cJSON_Delete(json); free(stu); return 0; }
以上示例代碼將一段JSON字符串轉換成了C語言的結構體,其中用到了cJSON庫的函數
在處理JSON數據時,還需要注意一些問題。例如,如果JSON中的某個屬性值為null,cJSON庫會將其轉換成一個空指針,在使用時需要注意判斷;又例如,在處理JSON嵌套復雜的數據結構時,需要使用
下一篇vue上傳文件demo