Si consiglia di utilizzare un flusso di stringhe. Puoi usare gli operatori I/O sovraccarichi come faresti con standard in/standard out. Qualcosa di simile a questo:
string tempString = "123 ab";
int firstArg;
string secondArg;
stringstream stream(tempString);
stream >> firstArg >> secondArg;
cout << firstArg << " " << secondArg;
Io personalmente trovo ad essere un po 'più chiaro di lettura in una stringa standard e quindi utilizzando standard di operatori di I/O, ma forse c'è una ragione che si desidera leggere in primo luogo in standard che non realizzo.
Spero che questo aiuti!
fonte
2011-02-07 19:00:02
Se si desidera utilizzare un array di caratteri anziché una stringa di std: è possibile utilizzare cin.getline (s, n); Dove n è il "numero di caratteri da memorizzare (incluso il carattere null terminante)". Vedi http://www.cplusplus.com/reference/iostream/istream/getline/. C'è anche una getline per std :: string, vedi http://www.cplusplus.com/reference/string/getline/ – anno
@anno: leggi 'cin' ** da ** una stringa, non da' cin' in un stringa. –