Risultati da 1 a 2 di 2

Discussione: Problema operatore di cast

  1. #1
    New Member
    Data Registrazione
    25-06-2005
    Messaggi
    19

    Problema operatore di cast

    Salve ragazzi,
    ho un problema:
    Codice:
    #include <stdio.h>
    
    main()
    {
     int numero;
     scanf("%i", &numero);
     if(numero >= 0)
               (unsigned int) numero;
                         printf("%u e' un numero positivo", numero);       
    }
    questo programma dovrebbe fare un cambio di tipo alla variabile numero nel caso
    questa fosse positiva, ma quando vado a stampare il risultato, mi da dei numeri
    che non riesco a capire da dove vengono fuori.
    che cavolo sara'?
    Non basta essere bravi, bisogna essere i migliori.

    My Site : kaiser89.t35.com

  2. #2
    Super Member L'avatar di hannibal
    Data Registrazione
    18-02-2003
    Località
    Cesena - FC
    Messaggi
    510
    Nel caso di numeri positivi funziona.
    Il problema &#232; semplicemente nel "%u" che utilizzi nell'ultimo printf.
    Se il numero era positivo il tuo %u va bene dato che stampi un unsigned int, ma se era negativo quel %u non &#232; adatto a stampare un intero con segno.
    Usa %d nella printf e hai risolto.

Segnalibri

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •