next up previous contents
Nächste Seite: float, double, long double Aufwärts: Datentypen und Konstanten Vorherige Seite: Datentypen und Konstanten   Inhalt

int (long,short,signed,unsigned)

int ist der Basistyp für ganzzahlige Werte ohne Nachkommastellen. Normalerweise wird dieser Typ durch eine vorzeichenbehaftete Zweierkomplementdarstellung mit konstanter Anzahl Bits (meist 32, bei A'lteren Systemen auch 16, bei neueren Systemen auch 64) realisiert. Der Zahlenbereich geht dabei dann von $-2^{n-1}..2^{n-1}-1$, wobei $n$ die Anzahl bits darstellt. Varianten des einfachen int sind long int, short int, unsigned int und deren Kombinationen unsigned long int, unsigned short int. Aus Symmetriegründen gibt es auch signed (long,short) int. Bei der Deklaration von Variablen des entsprechenden Typs (s.u.) kann das Schlüsselwort int bei den Varianten auch weggelassen werden, sodaß z.B. unsigned long dasselbe meint wie unsigned long int. Das Schlüsselwort signed wird bei int-Deklarationen i.A. immer weggelassen.

Der C-Standard definiert, was die Anzahl Bits der Varianten angeht nur folgendes:

longs haben mindestens 32 Bits und mindestens soviel wie ints. ints haben mindestens 16 Bits und mindestens soviel wie shorts. shorts haben mindestens 8 Bits.

Dezimale Zahlenkonstanten, deren binäre Repäsentation in ein int ,,hineinpassen``, werden als int interpretiert. Passen sie nicht, werden sie als long dargestellt, passen sie immer noch nicht und sind positiv, werden sie ls unsigned long angenommen. (Passen sie immer noch nicht, gibts eine Fehlermeldung).

Zahlenkonstanten, die mit der Zeichenfolge 0x oder 0X beginnen, werden als hexadezimale Zahlen (Zahlen mit Basis 16, die Ziffern für (dezimal) 10,11,12,13,14,15 werden durch die Buchstaben A bis F (Groß oder Kleinschreibung ist egal) dargestellt) interpretiert und haben, so genügend Bits vorhanden, den Typ int. Reicht die Anzahl Bits nicht aus, wird zunächst der Typ unsigned, dann der Typ long, dann unsigned long angenommen.

Zahlenkonstanten, die mit einer 0 (Ziffer Null) beginnen, werden als oktale Zahlen (Zahlen mit Basis 8) interpretiert und haben ebenfalls, so genügend Bits vorhanden, den Typ int. Reicht die Anzahl Bits nicht aus, wird zunächst der Typ unsigned, dann der Typ long, dann unsigned long angenommen.

Ganzzahligen Konstanten kann ein u oder U folgen, womit sie auf jeden Fall unsigned (int oder long) sind. Es kann auch ein l oder L folgen, womit sie auf jeden Fall long (signed oder unsigned) sind. In jeder der möglichen Kombinationen von u und l sind sie immer unsigned long


next up previous contents
Nächste Seite: float, double, long double Aufwärts: Datentypen und Konstanten Vorherige Seite: Datentypen und Konstanten   Inhalt
Thomas Neuhaus
2001-01-14