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

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 19:21:27
int a=5,b; b=++a*--a; printf(

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