第五章:操作符和表達式

1.移位

有符號值是邏輯移位與算術移位根據編譯器來判斷;

算術左移爲*2^n   算術右移爲/2^n;(n爲移位數)

2.賦值

char ch;
…………
while((ch=getchar())!=EOF)……

 EOF需要的位數比字符型所提供的位數要多,所以getchar返回的是一個整型值,經過我的實際測試EOF的值爲-1,上面這個while循環把getchar的返回值存於ch中導致其被截短,然後這個被截短的值再提升爲整形與EOF比較。這段代碼在使用有符號字符集的機器上如果讀取了一個值爲\377(8進制編碼-1)的字節時,循環會終止,如果在無符號字符集的機器上,循環不會停止。

3.邏輯操作符

&&的左邊先求值,如果爲真,再求右邊的值,如果爲假便不再求值,表達爲假,||有類似的特點。(短路求值)

4.結構成員

.用於結構體變量訪問成員,->用於指向結構體的指針訪問成員。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章