ciao! di recente mi sono imbattuta nella seguente scrittura:
while(scanf("%d", &valore)==1 && valore != 0)
{
}
qualcuno mi potrebbe spiegare il significato di quel ==1 dopo la scanf?
Grazie
ciao! di recente mi sono imbattuta nella seguente scrittura:
while(scanf("%d", &valore)==1 && valore != 0)
{
}
qualcuno mi potrebbe spiegare il significato di quel ==1 dopo la scanf?
Grazie
Finchè il valore inserito da tastiera è uguale a 1 e diverso da 0 entra nel while ed esegue le istruzioni... Di solito usano questo ciclo per creare programmi che entrano in ripetizione e girano finchè non si preme un tasto di uscita (in questo caso lo 0).Originariamente inviato da Rhode
ciao! di recente mi sono imbattuta nella seguente scrittura:
while(scanf("%d", &valore)==1 && valore != 0)
{
}
qualcuno mi potrebbe spiegare il significato di quel ==1 dopo la scanf?
Grazie
Mantisworks.net - Soluzioni dal web per il web!
SEO, SEM, Software, Siti internet, Grafica e Multimedia
No ... se non si ricordano, basterebbe dare un'occhiata alle specifiche della scanf in qualsiasi guida (online o cartacea) ...
"Return Value: on success, the function returns the number of items succesfully read. This count can match the expected number of readings or fewer, even zero, if a matching failure happens."
Quindi, la scanf in questione restituisce 1 per indicare che e' stato letta con successo 1 variabile e NON che il valore della variabile e' 1.
Se la scanf restituisce 0, allora la variabile non e' stata regolarmente accettata, magari perche' sono stati forniti dei caratteri alfabetici e non numerici.
ok ora è chiaro grazie mille!