Benny's Blog
Navigation: Home » Archives for Januar 2010
3. Januar 2010

Das Schlüsselwort typedef wird in C dazu verwendet, um einem Datentypen einen vereinfachten Namen zu geben. Das eignet sich besonders bei der Verwendung von Strukturen. Anhand von zwei Beispielen wird dies deutlicher:

Beispiel ohne typedef:

struct player
{
    char name[20];
    unsigned int number;
    unsigned int score;
};

Erzeugung eines Pointers auf die Datenstruktur “player”:

struct player *pPlayer = NULL;

Beispiel mit typedef:

typedef struct player
{
    char name[20];
    unsigned int number;
    unsigned int score;
} PLAYER;

Erzeugung eines Pointers auf die Datenstruktur “player”:

PLAYER *pPlayer = NULL;

Bei Anwendung einer Typdefinition muss jetzt nur noch das Schlüsselwort PLAYER (anstatt struct player) verwendet werden, was die Schreibweise und Code-Übersichtlichkeit wesentlich angenehmer macht.

Hinweis:: Es gibt noch eine weitere Möglichkeit eine Typdefinition durchzuführen, undzwar mit einer #define Konstanten am Anfang des Programms. Für das oben dargestellte Beispiel würde das so aussehen:

#define PLAYER struct player

Der Vorteil von #define ist, dass der Compiler eine einfache Ersetzung durchführen kann, wofür kein zusätzlicher Speicher reserviert werden muss.

Tags: C, C++,