vs+qt中利用readline读取的qstring类型字符串如何与常规定义的字符串比较
时间: 2024-02-05 16:13:36 浏览: 87
实现字符长度,串拷贝,连接以及比较string
可以使用QString的toStdString()函数将QString类型转换为常规的std::string类型,然后再进行比较。具体示例代码如下:
```cpp
#include <QtCore/QCoreApplication>
#include <QtCore/QString>
#include <readline/readline.h>
#include <iostream>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 读取字符串
char* str = readline("Please enter a string: ");
// 将QString类型转换为std::string类型
QString qstr = "Hello, world!";
std::string stdstr = qstr.toStdString();
// 比较两个字符串
if (std::string(str) == stdstr)
{
std::cout << "Two strings are equal!" << std::endl;
}
else
{
std::cout << "Two strings are not equal!" << std::endl;
}
return a.exec();
}
```
在代码中,我们先使用readline函数读取一个字符串,然后将QString类型的字符串转换为常规的std::string类型,最后进行比较。需要注意的是,在将QString类型转换为std::string类型时,需要使用QString的toStdString()函数。
阅读全文