Gast
#4384687
Hallo Leute, in meinen reinen C Projekten nutze ich immer die Definitionen aus der <stdint.h>: uint8_t, uint16_t und uint32_t genauso wie UINT16_MAX usw Wenn ich den Quellcode copy&paste in ein cpp benutze, gibt es immer wieder Kompilierfehler, das UINT16_MAX nicht definiert ist. Ich benutze Qt 5.5 mit dem Mingw Compiler. Dort steht im <stdint.h>:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
Also er würde die Macros kennen, wenn - defined(__STDC_LIMIT_MACROS) gesetzt ist oder - __cplusplus >= 201103L erfüllt ist. Meine Frage: - darf/soll ich ich über meine IDE im Buildprozess __STDC_LIMIT_MACROS setzen? Oder ist das eher für Compiler-interne Sachen? - Was ist der bevorzugte Weg diese Sachen (INT16_MIN) zu benutzen? (PS Ich weiss unter cpp gibt es noch die #include <limits>, aber ich wollte den reinen/unmodifizierten C Code benutzen.) Danke für eure Hinweise. Adib. --