\ 16x \ n让Linux的终端变得一团糟

时间:2013-11-05 15:11:03

标签: c++ linux

当我在Linux的终端上运行下面的代码时,终端会乱七八糟。

#include <stdio.h>

int main()
{
    printf("\16x\n");

    return 0;
}

为了好奇,有人可以解释一下这里发生了什么吗?我知道问题出在\ 16x,但我不知道为什么会发生。

1 个答案:

答案 0 :(得分:6)

\16是Shift Out的ASCII八进制代码。在现代终端中,它会发生这样的事情(图片来自维基百科): Borked terminal 此ASCII代码曾用于围绕切换编码,语言等的各种制造商特定用途。

有关他们过去所做的更多详情,请参阅Wikipedia