C语言中:设i为int型,f为float型,d为double型,e为long型 10+‘a’+i*f-d/e 为什么先算10+‘a’啊?
答案:2 悬赏:70
解决时间 2021-03-14 21:09
- 提问者网友:我稀罕你
- 2021-03-14 00:10
C语言中:设i为int型,f为float型,d为double型,e为long型 10+‘a’+i*f-d/e 为什么先算10+‘a’啊?
最佳答案
- 二级知识专家网友:心与口不同
- 2021-03-14 00:21
只要右边相邻的运算符的优先级不高于左边,就从左往右运算。
全部回答
- 1楼网友:白日梦制造商
- 2021-03-14 01:03
运算符优先级的作用范围只是靠近它的前后两个运算,比如:
#include
int main ()
{
int a=3,b=5,c;
c=a*b-(a+=b);
printf("%d",c);
return 0;
}
按你的想法,括号把a+=b的优先级提到了最高,应该先运算,但是括号只是在前后相邻的三个运算中将其优先级提高,所以运算顺序依然是1.a*b;2.a+=b;3.两者相减
明白否?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯