看來對於c提供的庫函數,自己要看了纔行,不然用着還是有些不放心。

C語言求問.關於strcat的應用
懸賞分:15 - 解決時間:2009-4-9 19:48
#include<stdio.h>
#include<string.h>
main()
{ char *p1=”abc”,*p2=”ABC”,str[50]=”xyz”;
strcpy(str+3,p2);
strcat(str+2,p1);
printf(“%s/n”,str);
}
A xyzabcABC B zabcABC C yzabcABC D xyzABCabc

答案是D 我的疑問是strcat(str+2,p1);
這句話,上面執行後應該是xyzABC 。那麼執行那句話以後應該是xyzabcABC 纔對呀
求高手解答

strcat 不關心從哪裏開始。
它的第一個參數只是提供一個地址,然後從這個地址開始尋找,直到它找到一個'/0'。

然後它把它第二個參數指向的字符串粘貼到'/0'的位置,然後再在這個字符串後邊添加一個'/0'。

也就是說,不論你執行
strcat(str+2,p1);
還是strcat(str+3,p1);strcat(str,p1);
結果都是一樣的

呵呵,百度知道里看到的東東。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章