C語言中提供了許多處理JSON數據的庫,其中最受歡迎的是cJSON。但是,cJSON默認將JSON數據解釋為cJSON結構,如果我們需要將JSON數據轉換為URL格式,該怎么辦呢?下面就是一份使用cJSON庫實現JSON轉URL的示例代碼。
#include <stdio.h>
#include <cJSON.h>
int main() {
// 定義JSON字符串
char* json_string = "{ \"name\": \"Alice\", \"sex\": \"female\", \"age\": 20 }";
// 解析JSON字符串,生成cJSON結構體
cJSON* root = cJSON_Parse(json_string);
// 遍歷cJSON結構體,將每對key - value轉換為URL格式
cJSON* json_node = root->child;
printf("?%s=", json_node->string);
printf("%s", json_node->valuestring);
json_node = json_node->next;
while (json_node) {
printf("&%s=", json_node->string);
printf("%s", json_node->valuestring);
json_node = json_node->next;
}
// 釋放cJSON結構體
cJSON_Delete(root);
return 0;
}
上述代碼通過先解析JSON字符串生成cJSON結構體,再遍歷cJSON結構體轉換為URL格式。在遍歷過程中,使用了cJSON結構體的child與next指針,不停地遍歷cJSON結構體中的每一個key-value對。最后,通過printf函數輸出轉換結果。
上一篇mysql刪除數據記錄
下一篇python 整數不可變