3 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
等效于:
while (*t) {
*s = *t;
s++;
t++;
}
*s = *t;
當(dāng)t指向的字符為is時(shí)'\0',while循環(huán)將終止。在此之前,它將復(fù)制所t指向的char到所指向的char s,然后遞增s并t指向其數(shù)組中的下一個(gè)char。

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
幕后花了很多時(shí)間:
while (*s++ = *t++);
在s和t變量的指針(幾乎可以肯定字符),s作為目的地。以下步驟說(shuō)明了正在發(fā)生的事情:
t(*t)的內(nèi)容被復(fù)制到s(*s),一個(gè)字符。
s和t都增加(++)。
分配(副本)返回被復(fù)制(到while)的字符。
所述while繼續(xù)進(jìn)行,直到該字符是零(字符串中的端部C)。
實(shí)際上,它是:
while (*t != 0) {
*s = *t;
s++;
t++;
}
*s = *t;
s++;
t++;
但以更緊湊的方式寫(xiě)出來(lái)。
- 3 回答
- 0 關(guān)注
- 727 瀏覽
添加回答
舉報(bào)