永发信息网

我在vc++6.0中用了/=(除赋值),*=(乘赋值),结果应为a=4,b=4.500000,但运行结果不一样,求大神指教

答案:4  悬赏:0  手机版
解决时间 2021-04-04 04:40
  • 提问者网友:温柔港
  • 2021-04-03 22:23
include
void main()
{ int a;
float b;
a*=a/=(a=7)-(b=4.5);
printf("a=%d,b=%f\n",a,b)
最佳答案
  • 五星知识达人网友:何以畏孤独
  • 2021-04-03 22:44
在计算(a=7)-(b=4.5)时还有后续计算时会把结果换算成整数,也许是c++的舍入机制与C#不同。在C#中结果是正确的
全部回答
  • 1楼网友:胯下狙击手
  • 2021-04-04 00:19
运算符优先级,先算 (a=7)-(b=4.5) 之后一次计算 a*=a/= ,结果为4 , 4.5吧,
  • 2楼网友:从此江山别
  • 2021-04-03 23:42
vs2008表示结果确实是4和4.5,手动分析式子也是这个结果。莫非vc6.0自有想法?
  • 3楼网友:廢物販賣機
  • 2021-04-03 23:12
你好! 了下,在运算是赋值的话, +=,前面就不能用 *= ,/=, -= 希望对你有所帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯