我對編碼相當陌生,我希望有人能幫助我嗎?我試圖讀取一行空格分隔的整數,並將它們解析爲(最終到一個鏈表中)一個向量。將字符串解析爲int
所以一旦我有一個整數向量,有STL向量的迭代器,但我怎麼能遍歷鏈接列表中不在STL中的節點?
#include <cstdlib>
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
using namespace std;
int main(int argc, char** argv) {
cout << "Enter some integers, space delimited:\n";
string someString;
getline(cin, someString);
istringstream stringStream(someString);
vector<string> parsedString;
char splitToken = ' ';
//read throguh the stream
while(!stringstream.eof()){
string subString;
getline(stringStream, subString, splitToken);
if(subString != ""){
parsedString.push_back(subString);
}
}
return EXIT_SUCCESS;
}
提醒這個後來自己:'的std :: istream_iterator第一(字符串流),最後的; std :: vector parsedString(first,last);'將字符串拆分爲一個容器(儘管我不認爲這就是你真正想要做的)。在這個網站的流行問題中還有其他方法。 –
chris
2013-05-05 04:17:20
爲什麼不只是'int a; while(cin >> a){// do something}' – gongzhitaao 2013-05-05 04:17:26
你想自己實現鏈表嗎? – gongzhitaao 2013-05-05 04:32:52