scusate una cosa, funziona tutto, ma rileggendo non ho ben chiaro questa parte:Originariamente inviato da menphisx
oppure:codice:char *string = "ciao a tutti"; char *token = NULL; token = strtok(string, " "); puts(token); while((token = strtok(NULL, " ")) != NULL){ puts(token); }
codice:stringstream ss; ss << "ciao a tutti"; while(!ss.eof()){ string token; ss >> token; cout << token << std::endl; }![]()
che cos'è che faccio qui?codice:ss >> token;
EDIT: forse ho capito: lo stream ss è pieno perchè ci ho scritto, usando l'operator >> cerco di leggere di nuovo e mettere in token il risultato, ma lo stream è pieno e quindi sfruttando anche il fatto che l'operator >> come sul cin "tokenizza" per spazi, suddivido lo streamo in questo modo?