为了账号安全,请及时绑定邮箱和手机立即绑定

printf(“%d”,++x);第二个输出为什么是二

#include <stdio.h>
int main()
{
    int x = 0;
    printf("x=%d\n",++x);
    printf("x=%d\n",++x);   // 第二个值为什么是二啊??
    return 0;
}

正在回答

3 回答

因为第一个通过自加之后变成一,然后第二个又是自加,所以说第二个就是2喽

1 回复 有任何疑惑可以回复我~
#1

qq_李闯_0 提问者

谢谢了
2017-11-04 回复 有任何疑惑可以回复我~

我的理解是第一个++x是先在自身是0的基础上自增一再进行运算,而第二个值是在上一个自增一后的x值为基础再进行自增一再运算,所以输出的值为二。    ————本人才学C基础没几天,如果理解有错,还请包涵。

0 回复 有任何疑惑可以回复我~
#1

qq_李闯_0 提问者

没事,谢谢了
2017-11-04 回复 有任何疑惑可以回复我~

只用一个printf

0 回复 有任何疑惑可以回复我~
#1

qq_李闯_0 提问者

嗯嗯,谢谢了
2017-11-04 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

printf(“%d”,++x);第二个输出为什么是二

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信