在開發 Web 應用程序時,后端服務器需要通過 HTTP 協議返回各種數據,其中 JSON 數據是常用的一種格式。C 語言中,可以使用 cJSON 庫來生成和解析 JSON 數據。
生成 JSON 數據的代碼示例:
cJSON *root = cJSON_CreateObject(); cJSON_AddItemToObject(root, "name", cJSON_CreateString("Jack")); cJSON_AddItemToObject(root, "age", cJSON_CreateNumber(20)); char *json_str = cJSON_PrintUnformatted(root); printf("%s\n", json_str); free(json_str); cJSON_Delete(root);
解析 JSON 數據的代碼示例:
char *json_str = "{\"name\":\"Jack\",\"age\":20}"; cJSON *root = cJSON_Parse(json_str); if (root == NULL) { printf("JSON 解析失敗!\n"); } else { cJSON *name = cJSON_GetObjectItem(root, "name"); if (cJSON_IsString(name) && (name->valuestring != NULL)) { printf("name: %s\n", name->valuestring); } cJSON *age = cJSON_GetObjectItem(root, "age"); if (cJSON_IsNumber(age)) { printf("age: %d\n", age->valueint); } cJSON_Delete(root); }
cJSON 庫提供了一系列方便的函數來添加和獲取 JSON 數據中的元素,使用該庫可以快速方便地處理 JSON 數據,適用于 C 語言后端服務器返回 JSON 數據的場景。