慕神6102397
2019-10-22 14:56
#include <stdio.h>
int main()
{
int a = 100;
printf("%d\n",a++);
printf("%d\n",++a);
return 0;
}
因为定义后就输出,a++还没有运行所以第一个输出是100,第二个输出先完成第一次a++再进行++a
设有一字母t,运算开始为t=a++,运算后a=101,t为100;后t2=++a,a=102,t=102。这样行吗?
这个题目是告诉你运算方是向由右至左,也一定要有值才能运算 ,如:b++>a等同 b >a ,++b>a等同 b+1+1>a。
第一个不进行运算,第二个++a怎么自加后成102了
第一个printf会直接输出a的值不会进行自增运算,第二个printf会先运行自增运算后输出a的值。
取值是100 在运算++ 不就是101吗 还是不太懂麻烦您啦
a++是先取值再运算
C语言入门
926020 学习 · 20793 问题
相似问题