色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 獲取json轉對象

錢諍諍1年前8瀏覽0評論

C 語言是一種比較底層的語言,不像大多數高級語言一樣有現成的 JSON 庫。不過,我們可以使用 cJSON 這個輕量化的 C 語言庫來實現將 JSON 轉換為對應的對象。下面是一個簡單的示例。

#include <stdio.h>
#include <cJSON.h>
int main() {
char* json_string = "{ \"name\": \"John\", \"age\": 30 }";
cJSON *root = cJSON_Parse(json_string);
if (!root) {
printf("Failed to parse JSON: %s\n", cJSON_GetErrorPtr());
return -1;
}
cJSON* name = cJSON_GetObjectItem(root, "name");
char* name_str = cJSON_GetStringValue(name);
printf("Name: %s\n", name_str);
cJSON* age = cJSON_GetObjectItem(root, "age");
int age_int = cJSON_GetNumberValue(age);
printf("Age: %d\n", age_int);
cJSON_Delete(root);
return 0;
}

上述示例中,我們首先需要安裝 cJSON 庫。然后在代碼中,我們定義了一個 JSON 字符串,然后使用 cJSON_Parse 函數將其轉換為 cJSON 對象。若轉換失敗,我們可以通過 cJSON_GetErrorPtr 函數來獲取失敗原因。接著,我們使用 cJSON_GetObjectItem 函數獲取 JSON 中對應的元素,然后使用 cJSON_GetStringValue 和 cJSON_GetNumberValue 函數來獲取元素的值。最后,我們需要使用 cJSON_Delete 函數釋放對 cJSON 對象的占用。