屋顶上的桥 发表于 2019-2-28 18:17:33

求解

main()
{char a='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);
}
其中出现两个加号是为什么呢,

ba21 发表于 2019-2-28 18:58:49

先给你点建议,先跟着教程学着,问出现两个加号是为什么,说明你肯定还没有开始学;就算是跟你说明你明白不了。学习还是一步一步的来,不要急

910201513 发表于 2019-2-28 23:27:21

自加

行客 发表于 2019-3-1 08:58:15

同意ba21的意见。你最好跟着教程一点点的学习下。
关于你的问题,请看下下面的解释:
1、代码缺少头文件,结果会导致如printf()等不能正常使用;
2、main函数定义不标准
具体解释,请查看代码备注,并修改代码如下:#include<stdio.h>

int main() {
        char a = 'a', b;
        printf("%c,", ++a);        //++ 在前面叫做前自增(例如 ++a)。前自增先进行自增运算,再进行其他操作。所以打印出来的为b
        printf("%c\n", b = a++);        //++ 在后面叫做后自增(例如 a++)。后自增先进行其他操作,再进行自增运算。所以打印出来的不是c,而还是b。到了下一行就是c了。
        getchar();
        return 0;
}

落花于梦 发表于 2019-3-1 10:43:08

十十a是先自增再运算,a十十是先运算再自增

1nohtyp 发表于 2019-3-2 13:43:14

两个加号是变量的自加,加号在前先加一在操作,加号在后,先操作再加一
页: [1]
查看完整版本: 求解