Qt控制台输出QString
2012-06-12 14:42
423 查看
有时候想在控制台输出我们想要的QString变量。
1、qDebug可以实现在控制台终端打印,但我们还是想使用C++中的std::cout<<variable
This function does nothing if QT_NO_DEBUG_OUTPUT was defined during compilation.
2、网上说的方法利用QTextStream:
Cpp代码
#include <QTextStream>
QTextStream cin(stdin, QIODevice::ReadOnly);
QTextStream cout(stdout, QIODevice::WriteOnly);
QTextStream cerr(stderr, QIODevice::WriteOnly);
QString st("hello world");
cout <<str<<endl;//必须加endl才能输出
cin>>str;//输入
cout <<str;
cout.flush();//或者加cout.flush()才能输出
这样的cin、cout、 cerr和我们在传统C++遇到的有一点不同,那就是你cout了一个QString之后,默认是不直接输出的,一般需要等到cout的缓冲区满之后,才 向终端输出内部的字符串;如果你想在cout之后马上看到输出的内容,可以在输出之后在输出一个endl,或者调用cout的内部方法flush,强制情 况缓冲区
3、我们还是习惯用C++的 #include<iostream>中的std::cout,这个时候QString类型需要转换成Char *
Cpp代码
#include <iostream>
QString str("hello,world");
QByteArray ba(str.toAscii());//toAscii()返回一个QByteArray类型
std::cout << ba.data();//data()返回char *
//其它类型变量还是可以照常输出的。
1、qDebug可以实现在控制台终端打印,但我们还是想使用C++中的std::cout<<variable
This function does nothing if QT_NO_DEBUG_OUTPUT was defined during compilation.
2、网上说的方法利用QTextStream:
Cpp代码
#include <QTextStream>
QTextStream cin(stdin, QIODevice::ReadOnly);
QTextStream cout(stdout, QIODevice::WriteOnly);
QTextStream cerr(stderr, QIODevice::WriteOnly);
QString st("hello world");
cout <<str<<endl;//必须加endl才能输出
cin>>str;//输入
cout <<str;
cout.flush();//或者加cout.flush()才能输出
#include <QTextStream> QTextStream cin(stdin, QIODevice::ReadOnly); QTextStream cout(stdout, QIODevice::WriteOnly); QTextStream cerr(stderr, QIODevice::WriteOnly); QString st("hello world"); cout <<str<<endl;//必须加endl才能输出 cin>>str;//输入 cout <<str; cout.flush();//或者加cout.flush()才能输出
这样的cin、cout、 cerr和我们在传统C++遇到的有一点不同,那就是你cout了一个QString之后,默认是不直接输出的,一般需要等到cout的缓冲区满之后,才 向终端输出内部的字符串;如果你想在cout之后马上看到输出的内容,可以在输出之后在输出一个endl,或者调用cout的内部方法flush,强制情 况缓冲区
3、我们还是习惯用C++的 #include<iostream>中的std::cout,这个时候QString类型需要转换成Char *
Cpp代码
#include <iostream>
QString str("hello,world");
QByteArray ba(str.toAscii());//toAscii()返回一个QByteArray类型
std::cout << ba.data();//data()返回char *
//其它类型变量还是可以照常输出的。
相关文章推荐
- QT系列:控制台输出QString
- QT控制台输出QString
- Qt控制台输出QString
- qt输出到控制台
- linux 下 qt 控制台应用 终端 无输出
- qt 中文显示问题.(用printf 输出QString 内容)
- Window下Qt中用qDebug()输出调试信息到Console控制台的设置方法
- Window下Qt中用qDebug()输出调试信息到Console控制台的设置方法
- VS和Qt之解决在控制台下输出中文乱码问题
- Qt 5.3更新无数,更改C++控制台输出最为赞
- 关于Qt中遇到qDebug输出QString时输出Unicode码问题的解决与总结
- VS+QT开发调出控制台输出log方法
- 在vs中开发QT时使能控制台输出的方法
- Qt输出到控制台/接收程序输出
- Qt二题:QString的输出和QDialog的退出
- Qt在windows下在控制台用qDebug()输出调试错误
- QT中实现在控制台输出
- qt在GUI显示时,将调试信息输出到控制台的设置
- 在 Qt 中如何获得一个字符串(QString)在某种字体(QFont)下输出后占据的矩形大小?
- Window下Qt中用qDebug()输出调试信息到Console控制台的设置方法