Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    2

    [C] significato di "scanf("%d", &v)==1

    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

  2. #2
    Se il valore immesso è 1 entra nel while...

  3. #3

    Re: [C] significato di "scanf("%d", &v)==1

    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
    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).

    Mantisworks.net - Soluzioni dal web per il web!
    SEO, SEM, Software, Siti internet, Grafica e Multimedia

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    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.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    2
    ok ora è chiaro grazie mille!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.