C JSON非第三方庫是一種用C語言編寫的開源JSON解析器。它支持解析JSON數據并將其轉換為C語言中的數據類型,同時也可以將C語言中的數據類型序列化成JSON格式的字符串。這個庫非常小巧,只有一個.c文件和一個.h文件,使用起來非常方便。
#include "cJSON.h"
int main()
{
// 創建一個JSON對象
cJSON *json = cJSON_CreateObject();
// 向JSON對象中添加鍵值對
cJSON_AddStringToObject(json, "name", "張三");
cJSON_AddNumberToObject(json, "age", 28);
cJSON_AddBoolToObject(json, "isMarried", true);
// 序列化JSON對象為字符串
char *str = cJSON_Print(json);
printf("%s\n", str);
// 釋放內存
cJSON_Delete(json);
free(str);
return 0;
}
以上是使用cJSON創建一個JSON對象并將其轉換為字符串的代碼示例。通過cJSON_CreateObject()函數創建一個空的JSON對象,然后使用cJSON_AddXXXToObject()函數向JSON對象中添加鍵值對。最后使用cJSON_Print()函數將JSON對象序列化為字符串。在使用完JSON對象和序列化字符串后,需要使用cJSON_Delete()函數釋放JSON對象的內存并使用free()函數釋放序列化字符串的內存。
C JSON非第三方庫還有許多其他的功能,比如解析JSON字符串為JSON對象、從JSON對象中獲取值、以及對JSON對象進行修改等。除此之外,它還支持生成和解析JSON數組、使用鏈式操作等高級功能。因此,對于使用C語言編寫JSON解析器的開發人員來說,C JSON非第三方庫是一個非常不錯的選擇。