導(dǎo)讀 關(guān)于unsigned char是什么類型,unsigned char是什么意思這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看
關(guān)于unsigned char是什么類型,unsigned char是什么意思這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、unsigned char 是無符號字符型volatile 易變,易失的volatile unsigned char i;意思是定義一個無符號字符型的變量 i。
2、這個變量存放在內(nèi)存中,要用的時候需要從內(nèi)存中取出。
3、一般的邏輯是“準(zhǔn)備用變量----去對應(yīng)的內(nèi)存地址取變量----用變量”,而現(xiàn)在編譯器編介入后,就把i 的值放在R寄存器里,每次從R寄存器里取值,而不從內(nèi)存取值。
4、這樣問題就出現(xiàn)了,有的時候寄存器里存放的值會發(fā)生意想不到的改變,這個時候編譯器如果還是從寄存器取值的話,程序就會得不到預(yù)計的結(jié)果,或者得到預(yù)料外的結(jié)果。
5、所以就必須強(qiáng)迫編譯器從原始地址取值,volatile 就是這個作用,聲明它是一個會被意想不到改變的變量,不讓編譯器優(yōu)化它,讓編譯器從原始地址取值。
本文分享完畢,希望對大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!