我对C语言中的putchar函数有疑问。在学习期间,我偶然发现了以下语句:printf("%c\n",putchar('A'+1)+2);
当我编译并执行程序时,结果是BD。我无法理解,当我们键入putchar('A' + 1)
时,结果将为B,但是如何获得D?这个函数一次不返回一个字符吗?
提前致谢
最佳答案
putchar
在做两件事:
将字符“ B”写入stdout
返回char'B'作为函数调用的结果。
由于putchar
返回了“ B”,因此它添加了2,使其成为“ D”。这作为参数传递给printf
,然后将“ D \ n”写入stdout
。
关于c - 对C中的putchar结果感到困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39577773/