對于使用C語言取JSON數據中的某個鍵值,可以采用cJSON這個第三方庫來完成。
#include<stdio.h> #include <cJSON.h> int main() { char *json_str = "{\"name\":\"Tom\", \"age\":23}"; // 假設有這樣一個JSON字符串 cJSON *root = cJSON_Parse(json_str); // 解析JSON字符串 cJSON *name = cJSON_GetObjectItem(root, "name"); // 獲取name鍵的值 if (name != NULL) { if (name->type == cJSON_String) // 如果name鍵的值是字符串類型 { printf("name: %s\n", name->valuestring); } } cJSON_Delete(root); // 釋放內存 return 0; }
首先我們需要一個JSON字符串,假設有上面的JSON字符串。
然后我們需要解析該字符串。使用cJSON_Parse函數即可將JSON字符串轉換成cJSON對象。
接下來,通過cJSON_GetObjectItem函數獲取某個鍵的值。這里我們獲取name鍵的值。
判斷獲取的值的類型是否為字符串類型。如果是則打印該字符串。
最后我們需要釋放內存,使用cJSON_Delete函數即可。
下一篇c 去掉json中的