Konstanten der numerischen Datentypen

Jeder einfache numerische Typ ist  für gewisse Aufgaben bestimmt und ermöglicht Arbeit des mql5-Programms beim richtigen Verwenden zu optimieren. Für bessere Kodelesbarkeit und richtige Bearbeitung der Berechnungsergebnisse sind Konstanten eingeführt, die Informationen über Einschraenkungen zu bekommen ermöglichen, durch die einer oder anderer Typ einfacher Daten bechraenkt werden.

Konstante

Beschreibung

Wert

CHAR_MIN

Minimaler Wert, der durch den Typ char dargestellt werden kann

-128

CHAR_MAX

Maximaler Wert, der durch den Typ char dargestell werden kann

127

UCHAR_MAX

Maximaler Wert, der durch den Typ uchar dargestell werden kann  

255

SHORT_MIN

Minimaler Wert, der durch den Typ short dargestellt werden kann

-32768

SHORT_MAX

Maximaler Wert, der durch den Typ short dargestellt werden kann

32767

USHORT_MAX

Maximaler Wert, der durch den Typ ushort dargestellt werden kann  

65535

INT_MIN

Minimaler Wert, der durch den Typ int dargestellt werden kann int

-2147483648

INT_MAX

Maximaler Wert, der durch den Typ int dargestellt werden kann

2147483647

UINT_MAX

Maximaler Wert, der durch den Typ uint dargestellt werden kann

4294967295

LONG_MIN

Minimaler Wert, der durch den Typ long dargestellt werden kann

-9223372036854775808

LONG_MAX

Maximaler Wert, der durch den Typ long dargestellt werden kann  

9223372036854775807

ULONG_MAX

Maximaler Wert, der durch den Typ ulong dargestellt werden kann  

18446744073709551615

DBL_MIN

Minimaler positiver Wert, der durch den Typ double dargestellt werden kann

2.2250738585072014e-308

DBL_MAX

Maximaler Wert, der durch den Typ double dargestellt werden kann  

1.7976931348623158e+308

DBL_EPSILON

Der minimale Wert, für den Die Bedingung 1.0+DBL_EPSILON != 1.0 erfuellt wird

2.2204460492503131e-016

DBL_DIG

Anzahl der bedeutenden Dezimalzeichen

15

DBL_MANT_DIG

Anzahl der Bits in mantissa

53

DBL_MAX_10_EXP

Maximaler dezimaler Wert der Exponentenstufung

308

DBL_MAX_EXP

Maximaler binaerer Wert der Exponentenstufung

1024

DBL_MIN_10_EXP

Minimaler dezimaler Wert der Exponenetenstufung

(-307)

DBL_MIN_EXP

Minimaler binaerer Wert der Exponentenstufung

(-1021)

FLT_MIN

Minimaler positiver Wert, der durch den Typ float repraesentiert werden kann

1.175494351e-38

FLT_MAX

Maximaler Wert, der durch den Typ float repraesentiert werden kann

3.402823466e+38

FLT_EPSILON

Der minimale Wert, für den die Bedingung 1.0+FLT_EPSILON != 1.0 erfuellt wird

1.192092896e–07

FLT_DIG

Anzahl der bedeutenden Dezimalzeichen

6

FLT_MANT_DIG

Anzahl der Bits in mantissa

24

FLT_MAX_10_EXP

Maximaler dezimaler Wert der Exponentenstufung

38

FLT_MAX_EXP

Maximaler binaerer Wert der Exponentenstufung

128

FLT_MIN_10_EXP

Minimaler dezimaler Wert der Exponentenstufung

-37

FLT_MIN_EXP

Minimaler binaerer Wert der Exponentenstufung

(-125)

Beispiel:

void OnStart()
  {
//--- geben wir Werte der Konstanten aus 
   printf("CHAR_MIN = %d",CHAR_MIN);
   printf("CHAR_MAX = %d",CHAR_MAX);
   printf("UCHAR_MAX = %d",UCHAR_MAX);
   printf("SHORT_MIN = %d",SHORT_MIN);
   printf("SHORT_MAX = %d",SHORT_MAX);
   printf("USHORT_MAX = %d",USHORT_MAX);
   printf("INT_MIN = %d",INT_MIN);
   printf("INT_MAX = %d",INT_MAX);
   printf("UINT_MAX = %u",UINT_MAX);
   printf("LONG_MIN = %I64d",LONG_MIN);
   printf("LONG_MAX = %I64d",LONG_MAX);
   printf("ULONG_MAX = %I64u",ULONG_MAX);
   printf("EMPTY_VALUE = %.16e",EMPTY_VALUE);
   printf("DBL_MIN = %.16e",DBL_MIN);
   printf("DBL_MAX = %.16e",DBL_MAX);
   printf("DBL_EPSILON = %.16e",DBL_EPSILON);
   printf("DBL_DIG = %d",DBL_DIG);
   printf("DBL_MANT_DIG = %d",DBL_MANT_DIG);
   printf("DBL_MAX_10_EXP =  %d",DBL_MAX_10_EXP);
   printf("DBL_MAX_EXP = %d",DBL_MAX_EXP);
   printf("DBL_MIN_10_EXP = %d",DBL_MIN_10_EXP);
   printf("DBL_MIN_EXP = %d",DBL_MIN_EXP);
   printf("FLT_MIN = %.8e",FLT_MIN);
   printf("FLT_MAX = %.8e",FLT_MAX);
   printf("FLT_EPSILON = %.8e",FLT_EPSILON);
/*
   CHAR_MIN = -128
   CHAR_MAX = 127
   UCHAR_MAX = 255
   SHORT_MIN = -32768
   SHORT_MAX = 32767
   USHORT_MAX = 65535
   INT_MIN = -2147483648
   INT_MAX = 2147483647
   UINT_MAX = 4294967295
   LONG_MIN = -9223372036854775808
   LONG_MAX = 9223372036854775807
   ULONG_MAX = 18446744073709551615
   EMPTY_VALUE = 1.7976931348623157e+308
   DBL_MIN = 2.2250738585072014e-308
   DBL_MAX = 1.7976931348623157e+308
   DBL_EPSILON = 2.2204460492503131e-16
   DBL_DIG = 15
   DBL_MANT_DIG = 53
   DBL_MAX_10_EXP =  308
   DBL_MAX_EXP = 1024
   DBL_MIN_10_EXP = -307
   DBL_MIN_EXP = -1021
   FLT_MIN = 1.17549435e-38
   FLT_MAX = 3.40282347e+38
   FLT_EPSILON = 1.19209290e-07
*/ 
  }