Christoph: C struct

Beitrag lesen

Moin.

    struct pkw{  
    //...  
    }audi;

is äquivalent zu

    struct pkw{ // Definition des Typs `struct pkw`  
    //...  
    };  
    struct pkw audi; // Deklaration einer Variablen `audi` vom Typ `struct pkw`

wohingegen

    typedef struct pkw{  
    // ...  
    }audi;

äquivalent ist zu

    struct pkw{ // Definition des Typs `struct pkw`  
    // ...  
    };  
    typedef struct pkw audi; // Definition des Typs `audi` als Alias zu `struct pkw`

d.h. struct pkw und audi können synonym verwendet werden; z.B. ist die Variablendeklaration

audi audi;

identisch mit

struct pkw audi;

Es ist anzumerken, dass (im Gegensatz zu C++) in C die type tags (d.h. struct, union, enum) zwingend erforderlich sind.

Christoph