“该函数将写入为 unsigned char 的字符转换为错误时的 int 或 EOF ”:请参阅 Putchar。为了练习,我制作了这个程序:
#include<stdio.h>
int main(void){
for(putchar('1'); putchar('2'); putchar('3'))
putchar('4');
return 0;
}
它会导致一个无限循环输出...432432432432432...
。我无法得到这种结果背后的原因。我希望循环一遍又一遍地打印相同的数字。我指的是 putchar('4') 的值,其中字符 '4' 应该提升为 int 52。为什么这种提升的行为不像我预期的那样?