C语言里A++和++A有什么不同?

来源:百度知道 编辑:UC知道 时间:2024/05/26 05:00:46
C语言里A++和++A有什么不同?
书上说的难懂
谁给个列子解释下
谢谢

也不算很难理解啊 说的通俗点
A++ 就是先把A当前的值 进行输出或运算啥的 然后A在自增1 就是加1
++A 也就先把A当前的值自增1 然后在输出或运算啥的
好比A的值是1
B=++A 先把A当前的值1 自增1 然后运算就是赋值给B 所以B=2 A=2
B=A++ 先把A当前的值1运算 就是赋值给B 所以B=1 然后A在自增1所以A=2
++ --是1元运算副 具有右综合性 优先级高过 逻辑 算术 赋值 关系等这些运算副

1,表达式的值不同,++a的值是原a的值加1,a++是原a值
例1
int a=1, b;
b=++a;
printf("%d",b);
例2
int a=1, b;
b=a++;
printf("%d",b);
2,++a可以做左值,a++不可以
例1
int a=1, b=5;
++a=b;
printf("%d",a);
例2
int a=1, b=5;
a++=b;/*这里是个编译错误*/
printf("%d",a);

都是自加1
不过是先后的问题

hahugo88的回答很正确,这个意义必须掌握好哦! 我就是因为这个概念模糊考试丢了10分

A++是先用A的值,然后使A的值加1;而++A是先使A的值加1在使用A的值!!!!

呵呵 这个问题好说
#include <iostream>
using namespace std;
int main()
{
int a,b;
a=b=1;
cout<<a++<<"---"<<++b;//输出结果是 1---2
cout<<endl;
cout<<a <<"---"<<