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;
}; |
struct player
{
char name[20];
unsigned int number;
unsigned int score;
};
Erzeugung eines Pointers auf die Datenstruktur „player“:
struct player *pPlayer = NULL; |
struct player *pPlayer = NULL;
Beispiel mit typedef:
typedef struct player
{
char name[20];
unsigned int number;
unsigned int score;
} PLAYER; |
typedef struct player
{
char name[20];
unsigned int number;
unsigned int score;
} PLAYER;
Erzeugung eines Pointers auf die Datenstruktur „player“:
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 |
#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.
Letzte Kommentare