学习C语言的总结(第五周)

错误的地方
1.在赋值运算时,(1)只要数据参与运算后发生改变,变量地址中的数据也会发生改变,在执行下一步运算的时候该变量的数值应该以运算后的数值进行新的运算。(2)但在不含赋值运算符“=”的语句运算后,变量数据不变
例(1):int a=3,b=4,c;
c=a–*++b;
当运算开始,a应该先参与运算(3x5=15),再进行自减(3-1=2);b应该先自增变成(4+1=5),然后参与运算,运算结束后c=15;a=2;b=5
先自增/自减,还是先进行运算,可以通过++/–在前面还是后面来判断

例(2):int a=3;
printf("%d",a=2+3,a+5,a+10);
运算后结果为最后一个表达式的值,即a=2+3+10=15

2.在运行程序时,运算会按照一定的优先级还有结合性来运行,其中结合性是C语言具有而其他语言不具有的,在编辑的时候应该注意按照相应的优先级来运行

所谓的结合性,分为左结合还有右结合。
说白了,就是在运算时遇到同样优先级的运算符,需要进一步确定谁先开始运算,就需要从它们的结合性来判断,绝大多数的结合性都是从左到右

猜你喜欢

转载自blog.csdn.net/qq_43371045/article/details/83780391
今日推荐