Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    16

    [C] Problemi con assegnazione float

    Ciao ragazzi, qualcuno riesce a spiegarmi perchè con questo semplice codice

    codice:
    int numero_vettori=12;
    float centroidi[numero_vettori];
    for (j=0;j<numero_vettori;j++)
    {
    	centroidi[j]=(float)125.5;
    	printf("centroide = %f \n",centroidi[j]);
    }
    mi stampa "-5011019108882072967975643073478656.000000"
    invece di "125.5"?

    Dove sto sbagliando?

  2. #2
    Il codice è corretto e funziona come previsto; sicuro che il problema sia lì (o in alternativa, sei sicuro di aver effettivamente ricompilato dopo le ultime modifiche)?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    E' corretto anche così, ma sarebbe preferibile dichiarare numero_vettori come const int.

    In ogni caso quel codice è corretto e deve funzionare
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    16
    Ho trovato il problema:
    nel codice incollato avevo tolto alcune parti per semplificare!
    Nel codice reale non mi ero accorto di aver inserito un j++ prima di stampare il contenuto di centroidi[j], quindi è bastato togliere il j++!

    Scusate e grazie dell'aiuto!!! ;-)

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.