Visualizzazione dei risultati da 1 a 4 su 4

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    55

    Modi per rappresentare un float

    Salve a tutti,

    vorrei sapere che differenza c'è tra una espressione del genere:

    (float)2

    e

    2.

    la prima "versione" dovrebbe essere un cast del 2 al tipo float... la seconda invece?
    facendo qualche "esperimento" ho notato che producono lo stesso effetto, quindi ipotizzo che scrivere 2. equivale a scrivere 2.0, di conseguenza 2.0 è un float ed ecco spiegato lo stesso risultato...


    lo stesso ragionamento si può applicare al tipo double?
    come posso scrivere "2." in versione double? lo so che la domanda è posta malissimo



    P.S Domanda un po off topic: sto realizzando un programma per il calcolo dell'epsilon macchina.
    Una volta fatto, ho cercato su internet per vedere qualche programma fatto da altri ed ho notato che molti mettono tra i parametri di input della loro funzione la base n base alla quale calcolare l'epsilon macchina. Che senso ha? il calcolatore ragiona in binario...che senso ha dargli una base diversa da 2?


    GRAZIE MILLE PER LE EVENTUALI RISPOSTE

  2. #2
    Nominalmente la prima converte un int (2 è un literal di tipo int) nell'equivalente float; la seconda invece dichiara un double di valore 2. In ogni caso, il cast a float è puramente sintattico, su qualunque compilatore decente il codice generato dovrebbe essere identico a quello per l'equivalente literal (2.f).

    Occhio infatti: tutti i literal numerici "con il punto" sono di tipo double; per avere un literal di tipo float in coda ci deve essere una f. Per cui:
    2 => int
    2. => double
    2.f => float
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    55
    ah...grazie mille! questa cosa nonn la sapevo
    per quanto riguarda la seconda domanda? sai darmi una risposta?

  4. #4
    Mi sembra strano... magari posta un link ad uno di questi programmi, così mi faccio un'idea un po' più precisa.
    Amaro C++, il gusto pieno dell'undefined behavior.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.