C++ 我想在标记化后退出我的代码
我想通过使用以下代码的空格delimeter标记我的字符串:C++ 我想在标记化后退出我的代码,c++,C++,我想通过使用以下代码的空格delimeter标记我的字符串: int main(){ string str; string s; cout<<getcwd(NULL,0)<<endl; cout<<"Enter your command"<<endl; cin>>str; while (getline(cin, str, ' ') && str.size() != 100) cin>>str; re
int main(){
string str;
string s;
cout<<getcwd(NULL,0)<<endl;
cout<<"Enter your command"<<endl;
cin>>str;
while (getline(cin, str, ' ') && str.size() != 100)
cin>>str;
return 0;
}
但我想在输入后终止代码,但它一直在输入,不执行返回0行,我应该怎么做才能让用户只能输入100个字符,在输入后用户应该终止程序。str.size!=100似乎是一种在大多数情况下评估为真的情况。如果存在一些输入,则无法退出该循环,除非str.size正好等于100。看起来很有限制性。那么我应该使用什么条件来保证完整性呢???@stakx,如果getline返回的内容转换为false,那么循环也将退出。也就是说,如果用户通过特定于系统的方式表示EOF,可能涉及Ctrl+Z或Ctrl+D。@mahnoorfatima很难说出您希望看到发生什么,如果不知道,就不可能知道应该使用什么代码来实现。你能试着把你的问题修改得更精确些吗?也许一些示例输入和该示例输入的预期程序行为会有所帮助。我的代码持续获取输入我只想标记我的输入,输入是行,我以字符串形式获取,这样字符应该小于100,获取输入后返回0行应该实现,但不是