E avevi ragione, perché ricordavo maleil whitespace a fine scanf non funziona, perché la scanf continua ad aspettare a ritornare finché riceve whitespace, per cui non ritorna finché non vengono inseriti caratteri non-whitespace. Chiedo scusa per la confusione.

Rileggendo le manpage della scanf, comunque, salta fuori che il "pulire" lo stream di input dovrebbe servire solo se dopo fai a fare una scanf con %c o con %[...] (o fai un'operazione di input non formattato, come fgets o fread), visto che, con l'eccezione degli specificatori in questione, il whitespace rimasto viene automaticamente scartato prima di iniziare a fare il parsing di quanto specificato nella stringa di formato (è come se nella stringa di formato ci fosse sempre uno spazio iniziale).

 
			
			 Originariamente inviata da Xaratroom
 Originariamente inviata da Xaratroom
					
 
					
					
					
						 Rispondi quotando
  Rispondi quotando