欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 傳字符串轉json

吉茹定1年前8瀏覽0評論

在C語言中,我們通常需要將字符串轉換成JSON格式,以便進行進一步的數據處理。下面是一段簡單的代碼示例,展示如何將一個字符串轉換成JSON格式:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
int main() {
const char *str = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
json_error_t error;
json_t *root = json_loads(str, JSON_DECODE_ANY, &error);
if(!root){
printf("JSON解析錯誤: %s\n", error.text);
return 1;
}
const char *name = json_string_value(json_object_get(root, "name"));
int age = json_integer_value(json_object_get(root, "age"));
const char *city = json_string_value(json_object_get(root, "city"));
printf("姓名: %s\n年齡: %d\n城市: %s\n", name, age, city);
json_decref(root);
return 0;
}

在上述代碼中,我們使用了jansson庫來完成字符串的JSON格式轉換。在main函數中,我們首先定義一個字符串變量,該變量表示了一個JSON對象。接著,我們使用json_loads函數將這個字符串轉換成一個json_t類型的根對象(root)。如果轉換失敗,我們就會得到一個錯誤信息。

接下來,我們從根對象中獲取數據。可以看到,我們使用json_object_get函數獲取JSON對象的屬性。它返回一個json_t類型的值,我們可以通過json_string_value和json_integer_value分別獲得屬性的字符串值和整型值。最后,我們將獲取到的數據打印出來。

最后,我們需要注意的是,為了避免內存泄漏,我們應該在使用完root對象后,調用json_decref函數來釋放它占用的內存。