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

c json解析 r n

錢衛國2年前9瀏覽0評論

在C語言中,JSON解析是一項非常重要的任務。而在JSON中,\r和\n是常見的特殊字符,需要特殊處理。

/*
** 在JSON中,\r和\n是特殊字符,需要特殊處理
*/ 
cJSON *json = cJSON_Parse(data);
char *str = cJSON_Print(json);
char *p,*q;
p = str; 
q = p; 
while(*p != '\0')
{
if(*p == '\r' || *p == '\n') p++; //跳過\r和\n
else
{
if(p != q) *q = *p; //將不是\r和\n的字符放到前面的位置
p++; q++; //移動指針
}
}
*q = '\0'; //字符串結尾加上\0
cJSON_Delete(json);

在上面的代碼中,我們首先使用cJSON_Parse函數將JSON字符串解析成cJSON類型的數據,再使用cJSON_Print函數將cJSON類型的數據轉化為字符串,并存儲在str指針變量中。

接著,我們對字符串進行處理。首先將p和q指針分別指向字符串的開頭,然后遍歷整個字符串。如果當前字符是\r或\n,則直接跳過;否則,將當前字符放到q指針所指向的位置,并將p和q指針都向后移動一位。

最后,將字符串的結尾加上\0,表示字符串的結束。

最后記得使用cJSON_Delete函數釋放cJSON類型的數據。