Navigation

2.6.4 Speicherklasse register

Variablen der Speicherklasse register sind spezielle auto-Variablen. Wenn möglich bringt sie der Compiler in einem Maschinenregister unter. Auch formale Parameter können in Registern gehalten werden. Im allgemeinen können nur Variablen der Typen char, short, int und Zeiger auf beliebige Datenobjekte in Maschinenregistern gespeichert werden. Register-Variablen sind nicht adressierbar und somit kann der Operator & nicht auf sie angewendet werden.

Die Anwendung der Speicherklasse register sollte sehr überlegt erfolgen, da es einen Eingriff in die Codeerzeugung durch den Compiler bedeutet.

BEISPIELE/b264.c: 

#include <stdio.h>

main()  /* Kopieren der Standardeing. in Standardausg. */
{
     register int c;              /* auch: register c; */

     while ((c = getchar()) != EOF) {
           putchar(c);
     }
}

Navigation