c++ - 仅将转义序列显示为文本

标签 c++

我的程序输出的文本有时包含转义序列,例如“\x1B[J”(清除屏幕)。无论如何要抑制转义序列,使其不执行其关联的操作,而是通过其文本表示形式显示?

我什至有兴趣为\n 和\r 这样做。

最佳答案

通过将每次出现的字符更改为 \\ 来转义 \ 字符。

请注意,这些序列只有在您将它们输入到源代码中时才有效。检查以下程序的结果:

#include <cstdio>

int main(int argc, char * argv[])
{
    char test[3] = { 0x5c, 0x6e, 0x00 }; // \n
    char * test2 = "\\n"; // \n

    printf("%s\n", test);
    printf("%s\n", test2);
    printf(test);
    printf(test2);

    return 0;
}

关于c++ - 仅将转义序列显示为文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14706659/

相关文章:

c++ - 使用子类类型子类化虚函数

C++ priority_queue 底层 vector 容器容量调整大小

c++ - 遍历 RapidJson 中的数组并获取对象元素

c++ - 什么时候调用右值析构函数/这样可以吗

c++ - 模板和继承问题!

c++ - 需要将此代码更改为 do while 代码

C++ 之类的转换与 C 之类的转换?

c++ - 如何从字节序列构造 C++ 字符串?

c++ - CPP : Assigned value

C++ 未定义的命名空间