真的匪夷所思,完全不理解

#include
main()

{

char c; 

for(;(c=getchar())!='#';)

    putchar(++c);

}

img


为什么啊?

当c=getchar()!=‘#’,也就是当输入的不为#时执行循环,putchar()函数是输出一个字符,而++c是先加一,再执行运算,在本题中就是先加1后再输出,对于字符加减数字其实是背后的ascill码相加减,然后再输出ascill码对应的字符。比如a+1=b,b+1=c,。。。。

哪地方你不理解啊???输出++c啊,输入a就会输出b啊