如何在C中没有空格的情况下打印NUL字符?

Ste*_*ayi 2 c c++

我有一种情况,如果我的程序的一部分没有动作,我必须打印出一个NUL角色.以下面的代码为例:

char x = '\0';

...

printf("@%c@\n", x);
Run Code Online (Sandbox Code Playgroud)

我希望它打印出来:

@@

但它打印出来

@ @

什么是正确的方法,不要让\ 0字符打印出如上所述的空格?

Dea*_*ing 7

if (x == 0)
    printf("@@\n");
else
    printf("@%c@\n", x);
Run Code Online (Sandbox Code Playgroud)

它实际上并没有打印空间,它实际上输出了\ 0.只是无论您正在查看文本,都将\ 0 显示为空格.