C語言中,JSON傳值可以通過使用第三方庫來實現(xiàn)。其中,常用的JSON解析庫有cJSON和json-c。
下面是使用cJSON庫進(jìn)行JSON傳值的示例代碼:
#include <stdio.h> #include <cJSON.h> int main() { // 創(chuàng)建JSON對象 cJSON* root = cJSON_CreateObject(); cJSON_AddNumberToObject(root, "id", 1001); cJSON_AddStringToObject(root, "name", "Tom"); cJSON* scores = cJSON_CreateIntArray((int[]){70, 80, 90}, 3); cJSON_AddItemToObject(root, "scores", scores); // 將JSON對象轉(zhuǎn)為字符串 char* jsonStr = cJSON_Print(root); printf("JSON字符串:%s\n", jsonStr); // 釋放JSON對象和字符串 cJSON_Delete(root); free(jsonStr); return 0; }
以上代碼中,首先創(chuàng)建了一個名為root的JSON對象,并向其中添加了三個屬性:id、name和scores。其中,id和name分別被賦值為1001和"Tom",而scores屬性是一個由三個整數(shù)構(gòu)成的數(shù)組。
接下來,使用cJSON_Print函數(shù)將JSON對象轉(zhuǎn)為字符串,并在控制臺輸出了該字符串。
最后,釋放了JSON對象和字符串的內(nèi)存空間。
除此之外,還可以使用json-c庫來實現(xiàn)JSON傳值。json-c庫與cJSON庫相似,同樣提供了JSON對象的創(chuàng)建、解析和轉(zhuǎn)換等功能。有興趣的讀者可以進(jìn)一步了解。