MyS*_*ver 5 c++ string cin getline delimiter
我尝试过使用getline(),但delimiter设置为“ !!”会导致程序无法编译。我需要将字符串读入名为消息的字符串变量中。我的代码看起来像这样......帮助?
cout << "Enter the message> ";
getline(cin, message, "!!");
Run Code Online (Sandbox Code Playgroud)
您没有正确使用 std 函数。您试图传递一个字符串作为分隔符而不是一个字符。如果这是您需要的分隔符,getline 不会立即帮助您。
http://www.cplusplus.com/reference/string/string/getline/
在这里您可以找到您想要实现的目标的工作代码:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string message;
cout << "Enter the message>";
cin >> message;
cout << message.substr(0, message.find("!!")) << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
您需要针对您的场景运行此命令或类似命令:g++ main.cpp && a.out
输出是:
Enter the message>sadfsadfdsafsa!!4252435
sadfsadfdsafsa
Run Code Online (Sandbox Code Playgroud)