【发布时间】:2024-01-11 20:23:02
【问题描述】:
我正在编写一个程序,它使用打印其输入的十六进制转储。但是,当传入换行符、制表符等并破坏我的输出格式时,我遇到了问题。
如何使用 printf(或我猜是 cout)打印 '\n' 而不是打印实际的换行符?我只需要为此做一些手动解析吗?
编辑:我正在动态接收我的数据,这不仅仅是我讨厌的 \n,而是所有符号。例如,这是我的 printf 语句:
printf("%c", theChar);
当换行符作为 theChar 传入时,如何打印 \n 但当 theChar 是有效的可打印字符时,它仍然打印普通文本?
【问题讨论】:
-
请记住,对 printf("%c", foo) 的单个调用不可能输出 \n,即两个字符的字符串。您基本上必须在更改输入(将“\n”替换为“\\n”)或老式的 if (theChar == '\n') 之间做出选择。
标签: c++ formatting printf cout