首先,split the string,然後使用atoi
將它們轉換爲數字。然後,您將從數組或向量中獲取數字的第8和第9個值。
//Split string
std::vector<std::string> &split(const std::string &s, char delim, std::vector<std::string> &elems) {
std::stringstream ss(s);
std::string item;
while (std::getline(ss, item, delim)) {
elems.push_back(item);
}
return elems;
}
std::vector<std::string> split(const std::string &s, char delim) {
std::vector<std::string> elems;
split(s, delim, elems);
return elems;
}
//new code goes here
std::string line;
std::vector<std::string> lineSplit = split(line, ' ');
std::vector<int> numbers;
for (int i = 0; i < lineSplit.size(); i++)
numbers.push_back(atoi(lineSplit[i]);//or stoi
int numb1 = numbers[7];//8th
int numb2 = numbers[8];//9th
由於這是C++,你應該推薦的C++結構等['的std :: istringstream'](http://en.cppreference.com/w/cpp/io/basic_istringstream)和['的std :: Stoi旅館'](http://en.cppreference.com/w/cpp/string/basic_string/stol),儘管在這種情況下不需要使用後者。 – 0x499602D2
@ 0x499602D2我無法看到'istringstream'如何適用於此? –
他需要遍歷每行,然後從該行提取整數。他會通過使用'std :: getline()'將行放入一個字符串中,然後使用'std :: istringstream'使字符串充當一個流,以便他可以讀入一個整數。 – 0x499602D2