++,--操做符的本质spa
++,--操做符使用分析
·C语言中只规定了++和--对应指令的相对执行次序
·++和--对应的汇编指令不必定连续运行
·在混合运算中,++和--的汇编指令可能被打断执行code
++和--参与混合运算结果是不肯定的blog
·贪心法:++,--表达式的阅读技巧
-编译器处理的每一个符号应该尽量多的包含字符
-编译器以从左向右的顺序一个一个尽量多的读入字符
-当读入的字符不可能和已读入的字符组成合法符号为止编译器
空格能够做为C语言中一个完整符号的休止符
编译器读入空格后当即对以前读入的符号进行处理it
例子17-2:io
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语言中的一个完整符号的休止符
·编译器读入空格后当即对以前读入的符号进行处理
狄泰软件学院课程软件