早教吧 育儿知识 作业答案 考试题库 百科 知识分享

(++a)++与++(a++)请把两者运算时的实际过程书写一下,还有为什么后者是错的?

题目详情
(++a)++与++(a++)
请把两者运算时的实际过程书写一下,还有为什么后者是错的?
▼优质解答
答案和解析
a++ 是先返回a的值,再执行++运算.
++a 是先执行++运算,在返回a的值.
例如:
#include
int main()
{
int a, b, c;
a = 5; //此时 a的值是5
b = a++; //这一步,a一开始为5, 先返回a的值给b,b就为5了,然后 a执行++,a就为6了.
printf("a = %d, b = %d \n", a, b); //输出 a = 6, b = 5
c = ++a; //这一步, a先执行++,a的值就为7了,然后再将a的值返回给c,c也等于7了.
printf ("a = %d, c = %d \n", a, c); //输出 a = 7, c = 7
return 0;
}