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

c 中用json收發消息

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

在C語言中使用JSON來收發消息是一種非常常見的方式。JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,基于鍵值對的方式表示數據。在C語言中,使用第三方庫可以方便地對JSON進行解析和生成。

以下是使用C語言中的json-c庫來解析JSON消息的代碼示例:

#include <stdio.h>#include <json-c/json.h>int main() {
char *json_str = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
// 解析JSON字符串
json_object *json_obj = json_tokener_parse(json_str);
// 讀取JSON對象中的鍵值對
json_object *name_obj;
json_object *age_obj;
json_object *city_obj;
json_object_object_get_ex(json_obj, "name", &name_obj);
json_object_object_get_ex(json_obj, "age", &age_obj);
json_object_object_get_ex(json_obj, "city", &city_obj);
// 打印讀取到的值
printf("Name: %s\n", json_object_get_string(name_obj));
printf("Age: %d\n", json_object_get_int(age_obj));
printf("City: %s\n", json_object_get_string(city_obj));
// 釋放內存
json_object_put(json_obj);
return 0;
}

以上代碼首先定義了一個JSON字符串,然后使用json_tokener_parse函數將其解析為一個JSON對象,接著通過json_object_object_get_ex函數獲取JSON對象中指定鍵名的鍵值對,最后使用json_object_get_string和json_object_get_int函數分別獲取字符串和數值類型的值,并打印輸出。最后,使用json_object_put函數釋放內存。

以下是使用C語言中的json-c庫來生成JSON消息的代碼示例:

#include <stdio.h>#include <json-c/json.h>int main() {
// 創建JSON對象
json_object *json_obj = json_object_new_object();
json_object_object_add(json_obj, "name", json_object_new_string("John"));
json_object_object_add(json_obj, "age", json_object_new_int(30));
json_object_object_add(json_obj, "city", json_object_new_string("New York"));
// 生成JSON字符串
const char *json_str = json_object_to_json_string(json_obj);
// 打印生成的JSON字符串
printf("%s\n", json_str);
// 釋放內存
json_object_put(json_obj);
return 0;
}

以上代碼首先使用json_object_new_object函數創建一個JSON對象,然后使用json_object_object_add函數向JSON對象中添加鍵值對,最后使用json_object_to_json_string函數將JSON對象轉換成字符串并打印輸出。最后,使用json_object_put函數釋放內存。