第17課 ++和--操做符分析

++,--操做符的本質
image.pngspa

++,--操做符使用分析
·C語言中只規定了++和--對應指令的相對執行次序
·++和--對應的彙編指令不必定連續運行
·在混合運算中,++和--的彙編指令可能被打斷執行code

++和--參與混合運算結果是不肯定的blog

image.png
·貪心法:++,--表達式的閱讀技巧
-編譯器處理的每一個符號應該儘量多的包含字符
-編譯器以從左向右的順序一個一個儘量多的讀入字符
-當讀入的字符不可能和已讀入的字符組成合法符號爲止編譯器

空格能夠做爲C語言中一個完整符號的休止符
編譯器讀入空格後當即對以前讀入的符號進行處理it

例子17-2:io

include "stdio.h"

int main()
{編譯

int i = 0;
//int j = ++i+++i+++i; //++i++ ==>1++ 常量不能自加
int a = 1;
int b = 4;
int c = a++ +b;
int* p = &a;
b = b/ *p; 
printf("c= %d\n",c);
printf("a= %d\n",a);
printf("b= %d\n",b);
return 0;

}
輸出結果:
c= 5
a= 2
b= 2class

小結:
·++和--操做符在混合運算中的行爲可能不一樣
·編譯器經過貪心法處理表達式中的子表達式
·空格能夠做爲C語言中的一個完整符號的休止符
·編譯器讀入空格後當即對以前讀入的符號進行處理
狄泰軟件學院課程軟件

相關文章
相關標籤/搜索