strcpy的原型是char * strcpy(char* strDest, char* strSrc)
返回一個(gè)char* 的原因是這樣可以鏈?zhǔn)奖磉_(dá)寝杖,如strlen(strcpy(str1,str2))
itoa(int, string, 10)表示將int轉(zhuǎn)為string韧涨,以10進(jìn)制
sprintf(s,"%d", 123)將123轉(zhuǎn)換為string并保存到s中
sprintf(s,"%s and %s", who, whom)將who和whom以及還有"and"連接保存到s中
char s[]="123456789";
char d[]="1234";
strcpy(d,s);
printf("%s %s",d,s);
//結(jié)果打印的是123456789 6789
這個(gè)結(jié)果造成的原因是首先s和d存放的空間連續(xù)即是
1234\0123456789\0
而微軟編寫這個(gè)strcpy程序的源碼為:
char* strcpy(char* dst,const char *src){
char *cp=dst;
while(*cp++=*src++);
return dst;
}
所以造成了那樣的輸出咕宿,避免的話吨岭,我們必須為s和d分配足夠的空間