【发布时间】:2016-11-21 01:13:51
【问题描述】:
使用以下代码:
QString msg;
msg = "Datalogging Item" + ',' +
QString::number(item) + ',' +
"Slave Index" + ',' +
QString::number(slaveIndex) + ',' +
"Slave Name" + ',' +
slaveName + ',' +
"Experiment Index" + ',' +
QString::number(expIndex) + ',' +
"Experiment Name" + ',' +
expName + ',' +
"Aquisition Frequency " + ',' +
"33 Hz" + "\n";
qDebug() << msg;
我得到以下调试输出
"riment Index0,Slave Index,0,Slave Name,Execute 1,Experiment Index,0,Experiment Name,Read All (Barebone),Aquisition Frequency ,33 Hz\n"
Wich 并不是我所期望的。
但是使用 QString 类型转换修改的代码:
QString msg;
msg = QString("Datalogging Item") + QString(',') +
QString::number(item) + QString(',') +
QString("Slave Index") + QString(',') +
QString::number(slaveIndex) + QString(',') +
QString("Slave Name") + QString(',') +
slaveName + QString(',') +
QString("Experiment Index") + QString(',') +
QString::number(expIndex) + QString(',') +
QString("Experiment Name") + QString(',') +
expName + QString(',') +
QString("Aquisition Frequency ")+ QString(',') +
QString("33 Hz") + QString("\n");
qDebug() << msg;
我得到了我期望得到的:
"Datalogging Item,0,Slave Index,0,Slave Name,Execute 1,Experiment Index,0,Experiment Name,Read All (Barebone),Aquisition Frequency ,33 Hz\n"
您对发生的事情有任何线索吗?我只是不明白发生了什么,我是 QT 的新手。
谢谢。
【问题讨论】:
-
不清楚您在问什么,请在您的问题描述中明确添加预期行为和当前行为。
-
他在问为什么第一个示例代码在输出中打印垃圾字符。我试图在下面回答。
-
你可能想使用 QString::arg() 代替。我就是这么做的。