Ist der int16_t
Typ in <stdint.h>
garantiert unterzeichnet werden, oder ist es nur vermeintlich unterzeichnet werden? Ich würde annehmen, dass es unterschrieben werden müsste, aber überraschenderweise kann ich keine konkreten Beweise finden (d. H. Verweise auf die Spezifikation), die das überall explizit erwähnen.Ist int16_t garantiert signiert?
Kann jemand dies bestätigen? Ich würde sehr gerne spezifische Referenzen auf die Spezifikation schätzen, wenn überhaupt möglich.
Das Thema wird in 7.18.1.1 p1 ausführlicher behandelt: "Der Typdef-Name intN_t bezeichnet einen Ganzzahl-Typ mit Vorzeichen mit der Breite N, keinen Füllbits und einer Zweierkomplementdarstellung." –
"Wenn Sie zum Beispiel' CHAR_BIT == 9' haben, könnte der Typ 'int16_t' nicht vorhanden sein. " sollte lauten "Wenn Sie zum Beispiel' CHAR_BIT == 9' haben, kann ** kein ** 'int16_t'-Typ sein." –
@R .. Ja, sieht aus wie du hast Recht. Ich dachte, es könnte einen 18-Bit-Typ mit 2 Füllbits geben, aber Füllbits sind in intN_t-Typen ausdrücklich nicht erlaubt. –