Systemnahe Programmierung in Chome Systemnahe Programmierung in C: Records Prof. Dr. Uwe Schmidt FH Wedel

Records

weiter

weiter

Verbund

Definition
eines Records
weiter
Beispiel
struct complex {
  double re;
  double im;
};
weiter
Variablen- Deklaration
struct complex c1c2;
weiter
Zugriff
auf Komponenten
schreibend
c1.re =  1.0;
c1.im = -1.0;
lesend
double dist
  = sqrt(c1.re * c1.re +
         c1.im * c1.im);
Zuweisungen
sind erlaubt
 
c1 = c2;
weiter
Schachtelung
ist möglich
Felder
sind als Komponenten möglich
 
struct person {
  char firstName[10];
  char lastName[20];
  int age;
};
 
struct address {
  struct person p;
  char city[15];
  int postalCode;
};
weiter
Zugriff
auf Komponenten
 
struct person p;
 
strcpy(p.firstName"Max");
strcpy(p.lastName"Mustermann");
p.age = 98;
 
struct address a;
 
a.p = p;
strcpy(a.city,"Musterfurt");
a.postalCode = 12345;
 
a.p.age = 89;
 
printf("%s %s, (Alter %d)%s%d %s",
       a.p.firstName,
       a.p.lastName,
       a.p.age,
       " wohnhaft in ",
       a.postalCode,
       a.city);

Letzte Änderung: 20.10.2016
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel