0
比方说,我的程序需要用户输入和用户决定输入这个: “新的(‘你好’,‘再见’)”如何阅读串内参数
Hi和细则都只是一个例子,我们不知道用户会实际输入什么内容。
我将如何提取这2个字符串(嗨和再见)?我不明白如何做到这一点。我在C++中阅读了更多关于字符串的知识,但我仍然不知道如何去做。
比方说,我的程序需要用户输入和用户决定输入这个: “新的(‘你好’,‘再见’)”如何阅读串内参数
Hi和细则都只是一个例子,我们不知道用户会实际输入什么内容。
我将如何提取这2个字符串(嗨和再见)?我不明白如何做到这一点。我在C++中阅读了更多关于字符串的知识,但我仍然不知道如何去做。
您不会真正从用户输入中获得两个字符串。即使它们将其格式化为
"word" "more words" "blah blah blah"
...它仍将存储在单个字符串中。无论你想要做什么,你都可能想要单独询问字符串,或者引导用户如何显示分隔符(可能是逗号)。
,作为使多个字符串出你有什么,你总是可以只通过大串读,如果你知道的分隔符(我用的是逗号),并将其分成两个字符串,s1
和s2
,像这样:
input = "color, length";
string s1 = "";
string s2 = "";
for (int i=0; i<input.length(); i++)
{
if(input[i] == ",")
{
s1 = input.substr(0, i);
s2 = input.substr(i+1);
break;
}
}
找到(,然后看看是否有一个“之后,再寻找下一个”取决于你真正想做的事 – immibis
你可能会寻找[正则表达式(HTTP:// EN。 – xboi209
@immibis,我已经通过std :: string中的“find”方法做到了这一点,它并没有帮我伤心 –