Perché il doppio e lungo il doppio sono completamente uguali sulla mia macchina a 64 bit?
-
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