如何设置输入不确定个数的字符串?中间会用空格分开,输入结束按回车键
5条回答 默认 最新
- SeaTalks 2017-08-28 05:38关注
那给你个例子吧:
#include <stdio.h> #include <iostream> #include <string.h> #include <vector> using namespace std; vector<string> split(char* str,const char* c) { char *p; vector<string> res; p = strtok(str,c); while(p!=NULL) { res.push_back(p); p = strtok(NULL,c); } return res; } int main() { char c; vector<char> chars; while((c=getchar()) != '\n'){ chars.push_back(c); } chars.push_back('\0'); char *str = new char[chars.size()+1]; strcpy(str, &(*chars.begin())); c=' '; vector<string> strs = split(str, &c); for (int i=0;i<strs.size();++i){ cout << strs[i]<<endl; } delete str; return 0; }
输入为:
a b asdf lkasj ;aslkdf asdf k
输出为:
a
b
asdf
lkasj
;aslkdf
asdf
k本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报