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

c 字符串轉換成json

林國瑞2年前8瀏覽0評論

在C語言中,我們經常需要將字符串轉換成JSON格式。JSON是JavaScript對象表示法的縮寫,它是一種輕量級數據交換格式。JSON常用于前后端傳輸數據,因此使用C語言將字符串轉換成JSON格式是非常有用的。

在C語言中,我們可以使用第三方庫cJSON來實現將字符串轉換成JSON格式的功能。cJSON是一個輕量級的JSON解析器和生成器,在C語言中使用非常方便。

#include <stdio.h>
#include <cJSON.h>
int main() {
char* str = "{\"name\":\"Tom\",\"age\":18,\"is_student\":true}";
cJSON* json = cJSON_Parse(str);
printf("Name:%s\n", cJSON_GetObjectItem(json, "name")->valuestring);
printf("Age:%d\n", cJSON_GetObjectItem(json, "age")->valueint);
printf("Is a student:%d\n", cJSON_GetObjectItem(json, "is_student")->valueint);
cJSON_Delete(json);
return 0;
}

以上代碼使用cJSON解析了一個JSON格式的字符串,并輸出了其中的三個屬性值(name、age、is_student)。其中,cJSON_Parse函數可以將JSON字符串解析成對應的cJSON結構體,cJSON_GetObjectItem函數可以獲取其中的屬性值,cJSON_Delete函數可以釋放內存。

當然,我們也可以使用cJSON生成JSON格式的字符串。以下是一個示例代碼:

#include <stdio.h>
#include <cJSON.h>
int main() {
cJSON* json = cJSON_CreateObject();
cJSON_AddStringToObject(json, "name", "Tom");
cJSON_AddNumberToObject(json, "age", 18);
cJSON_AddBoolToObject(json, "is_student", 1);
char* str = cJSON_Print(json);
printf("Json:%s\n", str);
cJSON_free(str);
cJSON_Delete(json);
return 0;
}

以上代碼使用cJSON生成了一個與之前示例中相同的JSON格式的字符串。cJSON_CreateObject函數可以創建一個cJSON結構體,并使用cJSON_AddXXXToObject函數向其中添加屬性和屬性值。cJSON_Print函數可以將cJSON結構體轉換成JSON格式的字符串,cJSON_free函數可以釋放內存。

總的來說,使用cJSON庫將字符串轉換成JSON格式非常簡單,只需要幾行代碼即可完成。不過在實際開發中,我們還需要考慮JSON格式的具體要求,以及如何解析和生成復雜的JSON格式。