在C語言中,拼接字符串并沒有Javascript或Python中那么方便,但是我們可以使用一些技巧來完成字符串拼接,最終生成符合JSON格式的字符串。
假設我們有一下數據需要拼接成JSON格式:
char *name = "Tom"; int age = 20; double height = 1.75;
第一步,我們需要定義一個字符串變量來保存拼接后的結果,這里使用動態(tài)內存分配來避免長度限制:
char *json_str = (char*) malloc(sizeof(char) * 100); json_str[0] = '{'; json_str[1] = '\0';
第二步,我們需要依照JSON格式的要求拼接數據:
strcat(json_str, "\"name\":"); strcat(json_str, "\""); strcat(json_str, name); strcat(json_str, "\","); strcat(json_str, "\"age\":"); char age_str[10]; sprintf(age_str, "%d", age); strcat(json_str, age_str); strcat(json_str, ","); strcat(json_str, "\"height\":"); char height_str[10]; sprintf(height_str, "%.2f", height); strcat(json_str, height_str); strcat(json_str, "}");
第三步,我們需要釋放分配的內存,避免造成內存泄漏:
free(json_str); json_str = NULL;
最終,我們拼接成了符合JSON格式的字符串:
{ "name":"Tom", "age":20, "height":1.75 }