|
楼主 |
发表于 2020-8-14 21:42:48
|
显示全部楼层
抱歉抱歉,我又來了 ....
剛解決一個問題,結果又來一個!
同樣這個函式:
char* StrAdd(char* msg, ... )
{
va_list argp;
int argno = 0;
char* para;
char rs_str[64];
va_start(argp, msg);
while (1)
{
para = va_arg(argp, char *);
if (strcmp(para, "") == 0)
break;
argno++;
strcat(rs_str, para);
}
va_end(argp);
return rs_str;
}
printf("\r\n") ;
printf("STR=%s\r\n",StrAdd("TEST ", "This ", "is ", "a ", "demo! ", "")) ;
printf("\r\n") ;
printf("STR=%s\r\n",StrAdd("TEST ",This ","is ","an ","apple " ,"")) ;
輸出結果:
STR=This is a demo!
STR=This is a demo! This? <----( 應該是蘋果呀!)
第二次呼叫就失效了,媽呀、痛哭呀,請教為什麼 ?
|
|