Strukturen

Dnh

Mitglied
Hallo,

ich habe zwei Fragen bezüglich Strukturen:
1) Es scheinen zwei verschiedene Versionen von Strukturen zu geben(?)
Folgende Struktur hat zusätzlich zu anderen Strukturen die ich gesehen habe noch einen Strukturnamen "teilnehmer". Wofür genau ist dieser gut und was ist der unterschied zu dem Strukturtypnamen? Ist es vielleicht so, dass ohne Strukturname einfach nur der Typ selbst erstmal definiert wird? Und wenn ein Strukturname vorhanden ist direkt eine Variable von diesem Typ erzeugt wird?
2) Warum wurde hier z.B. char *nachname als pointer definiert?

C:
struct anmeldung {
char* nachname;
char* vorname;
char* gebdatum;
int matrnr;
char* passwort;
int uebungsgruppe;
char neues_login;
} teilnehmer;
 

Robat

Top Contributor
Am Ende des Structs, zwischen } und ; kannst du eine Komma separierte Liste von Variablennamen angeben, welche erzeugt werden sollen.
Es wird also hier das Struct anmeldung deklariert und danach eine Variable teilnehmer von diesem struct erstellt.

An sich macht es keinen Unterschied ob du char* nachname oder char nachname[50] schreibst. Der Vorteil von Pointer ist, dass du hier keine Länge angeben musst .. bei der Variante mit der Array-Syntax aber schon.
 

Neue Themen


Oben