Was sind die tatsächlichen min/max-Werte für float und double (C++)

Habe ich gelesen, die Empfehlungen zur Nutzung der "FLT_MIN" und "FLT_MAX" Werte für float. Immer wenn ich dies tun, codeblocks sagt mir seine

max: 3.40282 e+038
min: 1.17549 e-038

Nicht zu wissen, was damit gemeint ist ich habe versucht, um echte Werte und bekam

max: 47.2498237715
min: -34.8045265148

... aber auch diese nicht klären Dinge.

Hier ist ein snippet aus meinem code

   char c;         //reserve: 1 byte, store 1 character (-128 to 127)
   int i;          //reserve: 4 bytes, store -2147483648 to 2147483657
   short int s;    //reserve: 2 bytes, store -32768 to 32767
   float f;        //reserve: 4 bytes, store ?? - ?? (? digits)
   double d;       //reserve: 8 bytes, store ?? - ?? (? digits)
   unsigned int u; //reserve: r bytes store 0 to 4294967295

   c = 'c';
   cout << c <<" lives at " << &c <<endl;

   i = 40000;
   cout << i <<" lives at " << &i <<endl;

   s = 100;
   cout << s <<" lives at " << &s <<endl;

   f = 10.1;
   cout << f <<" lives at " << &f <<endl;

   d = 10.102;
   cout << d <<" lives at " << &d <<endl;

   u = 1723;
   cout << u <<" lives at " << &u <<endl;

In der snippet-wir können deutlich sehen, die min-max-Werte ein short-int-zum Beispiel bei -32768 - 32767. Dies sind die richtigen Werte verständlich, aber für float und int, die realen Werte nicht klar sind.

  • en.cppreference.com/w/cpp/types/numeric_limits
  • en.cppreference.com/w/cpp/types/numeric_limits
  • 10s ninja 😀 Aber ich bin nur ein ole-Mann, ya know 😉
  • Eine Frage pro Frage bitte. Siehe stellen.
  • ich verstehe nicht die Frage. seine Fragen, wie "was ist der Sinn des 42?". Die zahlen, die Sie erhalten, sind die min/max-Ergebnis von FLT_MIN/MAX...
  • Wenn Sie möchten, entfernen Sie die wissenschaftliche notation, verwenden Sie das std::fixed manipulator um den Wert zu sehen, in normaler notation.
  • Ich wieder dieses da, es war falsch gekennzeichnet als ein Duplikat einer Frage nicht eingeht, wie man die minima. Besonders für floating-point -, immer die minima unterscheidet sich von erste die Höchstwerte seit Unterscheidungen sind für die wenigsten Größenordnung normalen Wert, die wenigsten positiven Wert, mindestens endlichen Wert, und am wenigsten Wert, die von denen Verschieden sind, die in IEEE-754.
  • Dennoch, die Frage, die geteilt werden soll, indem Sie die numerischen Grenzen Fragen, die von der Adresse Fragen.

InformationsquelleAutor user9318444 | 2018-02-05
Schreibe einen Kommentar