2016-06-22 3 views
-3

Ich möchte lesen ganze Zahlen von STDIN, 1,2,3,4Wie aus stdin int mit C++ Überspringen "" und "Space" bis " n"

vector<int> r; 
cin >> is; 
stringstream iss(is); 
int n; 
while(iss >> n) 
{ 
    r.push_back(n); 
} 

zu lesen, aber stoppt das Lesen nach "," gibt es einen anderen Weg als Splitting und direkt nur Integer lesen.

+0

'int n; Zeichen c; while (iss >> n >> c) {...} 'Wie auch immer, ja, Sie können die Zeile nach Trennzeichen teilen. – user2296177

+0

@ user2296177 'int n; Zeichen c; while (iss >> n >> c) {...} 'liest nicht das letzte' int'. –

+0

Werfen Sie auch einen Blick auf diese: http://StackOverflow.com/q/21837521/1025391 – moooeeeep

Antwort

0

Hier müssen Sie verbrauchen und die , nach jeder Ziffer überspringen wie here gezeigt:

vector<int> r; 
cin >> is; 
stringstream iss(is); 
int n; 
while(iss >> n) 
{ 
    r.push_back(n); 
    char c; 
    iss >> c; 
} 

Siehe Beispiel läuft here.

Verwandte Themen