c语言转义字符'\0'和空格输出效果一样,为什么?

今天我发现输出'\0'和空格效果是一样,如
#include <stdio.h>
int main()
{
int i;
for(i=0;i<10;i++)
putchar('\0');
return 0;
}
把putchar里面的'\0'换成' ';效果是一样的,为什么?
最新回答
与可爱私奔

2025-06-27 00:12:26

0对应空字符,所以putchar('\0')输出的就是啥都没有,看起来跟输出空格一样,但其实还是有区别的,空格是有宽度的但是'\0'是没有的
弥枳

2025-06-27 07:46:37

'\0' 是字符串的结束符,任何字符串之后都会自动加上'\0'。所以你加上这个和加个空格 视觉效果一样的