会c语言的来!

来源:百度知道 编辑:UC知道 时间:2024/06/30 20:31:39
int a=5;
printf("%d,%d,%d,%d\n",a,a--,--a,a);
为什么运行结果是:3,4,4,5?请高手指点下!

你没注意参数求值顺序。也许你的编译器是从右到左的计算,先是最右的a=5,左的--a=4,左 a--=4,再左 a=3.
个人建议,由于编译程序有从左到右和从右到左的顺序,不要这么写···