int a=5,b; b=++a*--a; printf("%d",b)请问输出的是啥?

来源:学生作业帮助网 编辑:作业帮 时间:2024/08/12 11:10:23
int a=5,b; b=++a*--a; printf(
xJ@_EZgYמEE@hT]tW(wԗ3ξEcv^aQ l|!h#CA `L~o龜}oU̓cEH*;? Y n{InkVU]M\wl-)S٤gejDo2y y3[&N[Ĩp=m'R:pD7Q$Jq_`.4>q}id4MVF?|6nj{f *

int a=5,b; b=++a*--a; printf("%d",b)请问输出的是啥?
int a=5,b; b=++a*--a; printf("%d",b)请问输出的是啥?

int a=5,b; b=++a*--a; printf("%d",b)请问输出的是啥?
25 b=++a*--a;这条语句右值是一个表达式,表达是++a 和--a是前置操作,返回的都是原地址值引用,直接操作原值,*的优先级低于++和--,所以当计算*的时候a的值还是5,没有创建副本,所以两个a不会一个6一个5