请问Turbo2.0和C++6.0执行出来的结果会不会不一样呢?

[复制链接]
查看11 | 回复3 | 2010-5-27 13:22:53 | 显示全部楼层 |阅读模式
我是在网上自学的,网上老师用的是Turbo2.0我用的是C++6.0.为什么结果回事25呢?怎么改正才能变成正确的答案?
main()
{
int i=3,j;
j=i++*++i+i--*--i;
printf("j=%d\n",j);
}

回复

使用道具 举报

千问 | 2010-5-27 13:22:53 | 显示全部楼层
编译器的问题,对于 j=i++*++i+i--*--i;这样的表达式,c的规范中并没有指定统一的规范,所以每个编译器都有自己的理解方法。
回复

使用道具 举报

千问 | 2010-5-27 13:22:53 | 显示全部楼层
TC和VC6.0+所设置的运算顺序不一样。
回复

使用道具 举报

千问 | 2010-5-27 13:22:53 | 显示全部楼层
把 程序拿出来看看呐
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行