作者appleway (apple)
看板ACMCLUB
标题Re: [问题] 撷取字串
时间01/27/2005 00:12:56 Thu
※ 引述《watershed (临界点)》之铭言:
: 虽然这个问题有点简单
: 但我还是想知道c++怎麽撷取字串的
: input: aa bb cc
: 我只会用c撷取字串
: char str[100],*p;
: gets(str);
: p = strtok(str," ");
: while( p != NULL ) {
: ...
: p = strtok(NULL," ");
: }
: 这是我看别人程式码学来的(c++)
: string word,str;
: getline(cin,str);
: istringstream ent(str);
: while( ent >> word ) { ... }
如果这一行改一下呢?
while( getline(ent, word, ';') )
getline可以设定第三个参数 一个char 截止字元不会读入
我实验了一下
[yuwei-chang:~/aska] yuwei% ./a.out new
aa;bb;cc
aa
bb
cc
下面是code
string t;
stringstream ss;
getline( fin_1, t);
cout << t << endl;
ss << t;
while(getline(ss, t, ';'))
cout << t << endl;
: 以上两个程式码对input都可以撷取
: 但若是input改成 aa;bb;cc 的话
: 第一个程式只要把判断的字元改一下就行了
: 但第二个程式就没办法
: 我是想问c++里有什麽函式跟第一个程式功能相同? 怎麽写?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.22.17.106