Perché il doppio e lungo il doppio sono completamente uguali sulla mia macchina a 64 bit?

StackOverflow https://stackoverflow.com/questions/8922216

  •  30-10-2019
  •  | 
  •  

Domanda

Questa domanda può sembrare per i principianti, tuttavia quando ho scoperto che ho pensato che io sia un principiante o il mio comp mancava qualcosa:

int main()
{
    cout << sizeof(double) << endl;
    cout << sizeof(long double) << endl;

    cout << DBL_DIG << endl;
    cout << LDBL_DIG << endl;

    return 0;
}

Output del programma:

8

8

15

15

ho pensato long double è 10 byte e ha 18 cifre decimali mentre double è 8 byte e ha 15 cifre, ma sembra che avessi torto.

Perchè è così?

Utilizzando MSVC 2010 su macchina a 64 bit.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top