这段代码:
QString output("test1\ntest2");
qDebug() << output;
Run Code Online (Sandbox Code Playgroud)
导致这个输出:
"test1\ntest2"
Run Code Online (Sandbox Code Playgroud)
我想要的是:
"test1
test2"
Run Code Online (Sandbox Code Playgroud)
那么我如何使用qDebug()(和类似的输出函子)来打印包含多行换行符的QString?
Mik*_*ike 21
qDebug()是为调试目的,所以它避开非打印字符打印时加引号QString,QByteArray,QChar论点.
尝试使用,qDebug().noquote()因为这会禁用转义不可打印的字符,如下所示:
QString output("test1\ntest2");
qDebug().noquote() << output;
Run Code Online (Sandbox Code Playgroud)
qDebug(),qInfo(),qWarning(),qCritical()和qFatal()都提供调试目的.它们并不意味着在生产代码中向用户显示某些内容.
请不要使用这些方法,除非您打印/记录一些调试语句.
| 归档时间: |
|
| 查看次数: |
4945 次 |
| 最近记录: |