標題: 對單片機C語言指針*str++的學(xué)習(xí)心得 [打印本頁]

作者: lsg0280    時間: 2021-12-20 14:25
標題: 對單片機C語言指針*str++的學(xué)習(xí)心得
這幾天學(xué)習(xí)到指針了。對宋老師的教材學(xué)得不透徹,經(jīng)過反復(fù)查看多方面的教材,終于有了體會。
unsigned char str1[20]="0123456789";
unsigned char *str =str1;
while (*str++ != '\0')
{
*str = '9';
}
循環(huán)的結(jié)果str1=099999999-------。
這樣就是一個死循環(huán)了。因為指針str指向的地址被新賦值的9覆蓋。循環(huán)的條件先取值比較,然后地址加1,循環(huán)到9的時候'\0'已經(jīng)被9覆蓋了。
nsingned char str1[20]="0123456789";
unsigned char *str =str1;
while (*str != '\0')
{
*str = '9';
str ++;
}

這樣寫就不會出現(xiàn)問題了。








歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1