gpt4 book ai didi

c++ - 简单问题:为什么字符串库函数std::string::find总是返回std::string::npos?

转载 作者:太空宇宙 更新时间:2023-11-04 15:52:00 26 4
gpt4 key购买 nike

请查看下面的代码片段,特别是第一个“else if”语句。我希望用户能够执行此操作:

加载文件名

所以我想检查“load”是否在字符串中,并尝试打开“load”之后的任何内容。然而,string::npos 似乎总是返回(string::npos 只是表示没有位置)。

我可能在做一些愚蠢的事情——这是最基本的事情!

void Main::user_choice() {
string choice;
while(choice != "exit") {
cout << "> ";
cin >> choice;
if(choice == "view") {
Main::view_frameworks();
}
else if(choice.find("load ") != string::npos) {

}
else if(choice == "exit") {
return;
}
else {
cout << "Invalid command" << endl;
}
}
}

最佳答案

cin >> choice 在第一个空格之前停止读取。你想要 getline(std::cin, choice) 在这里。

关于c++ - 简单问题:为什么字符串库函数std::string::find总是返回std::string::npos?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6389401/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com