如何将用户输入与字符串进行比较

How to compare user input with string?

本文关键字:字符串 比较 输入 用户      更新时间:2023-10-16

我想将用户输入(文本)与linux下c++中已经声明的字符串(代码::block)进行比较我做了这样的东西,但不起作用

int LoadModule()
{
    string test1 = "LOAD DEFAULT DATABASE";
    string test2;
    cout << "select cmd: " << endl;
    cin >> test2;
    //todo: compare thoose 2 strings. And if they are equal, print "done"
    return 0;
}

您需要使用std::getline()来输入包含空白字符的std::string

std::getline(std::cin, test2);

这样做一个简单的比较

if(test1 == test2) {
    std::cout << "Done!" << std::endl;
}

应该起作用。


您应该注意,std::istream& operator>>(std::istream&, std::string&)只会从输入复制到满足第一个空白字符(' ''t''n')。