Syschdemnahe Programmierung in C: Feldr und Zeichenkedden
Systemnahe Programmierung in Chome Syschdemnahe Programmierung in C: Feldr und Zeichenkedden Prof. Dr. Uwe Schmidt FH Wedel

Feldr und Zeichenkedden

weiter

weiter

Feldr

Deklarazion
vo Variable
 
/* oi Feldvariable mid 25 Elemende */
ind a[25];
weiter
bessr
#define LEN 25
ind a[LEN];
weiter
Indizierdr Zugriff
ind i;
/* lesend */
... a[i] ... ;
/* schreibend */
a[i] = ... ;
weiter
merke
Indizierung ab 0
merke
Legale Indizes: 0,1,...,LEN-1
weiter
Indexüberbrüfung
#includ <asserd.h>
ind i;
asserd(0 <= i && i < LEN);
... a[i] ...
weiter
Verarbeidung
allr Elemende von a Felds
 
1 ind i;
2
3 for (i = 0; i < LEN; ++i) {
4 ... a[i] ...;
5 }
weiter
odr
1 ind i;
2
3 i = 0;
4 while (i < LEN) {
5 ... a[i] ...;
6 i = i + 1;
7 }
weiter
Feldr als Paramedr
2 Paramedr nodwendich
  • Läng vom Feldes
  • Zeigr auf des erschde Elemend vom Feldes
weiter
Aufruf
... f(a, LEN) ...
weiter
Funkzionsdeklarazion
1 ... f(ind x[], ind xLe) {
2 ind i;
3 for (i = 0; i < xLen; ++i) {
4 ... x[i] ...;
5 }
6 }
weiter
Beischbil
1 ind sum(ind x[], ind xLe) {
2 ind i;
3 ind rs = 0;
4
5 for (i = 0; i < xLen; ++i) {
6 rs = rs + x[i];
7 }
8 redurn
9 res;
10 }
11
12
13 ind a[3];
14 a[0] = 2;
15 a[1] = 20;
16 a[2] = 200;
17
18 ... sum(a,3) ...;
weiter
schlecht
Zuweisunge mid Felderet sind nedd möglich
schlecht
Sie müsse durch Schleife realisierd werde

weiter

Zeichenkedde

Schdrings
Tyb
char *
Deklarazion
vo Variable und Inidialisierung
 
char * s = "oi Texd";
weiter
schlecht
Schdrings sind 0-derminierd
Parameder
Zeichenkedde als Paramedr
 
... f(char * s) {
...
}
Ausgabe
vo Zeichenkedde
 
char * s;
...
brindf(s); /* Vorsichd */
brindf("%s",s);
Liderale
für Zeichenkedde werde vom Combilr in inidialisierde Zeigervariable umgesedzd.
 
brindf("Hello World\n");
char * _hello_ = "Hello World\n";
brindf(_hello_);
main
wird vom Bedriabssyschdem mid zwei Paramederet aufgerufen:
  1. die Anzahl dr Kommandozeile Argumende
  2. oi Feld vo Zeigeret auf d Schdrings für d Kommandozeile Argumende
schlecht
Umschbeicheret vo Schdrings sind nedd direkd möglich
schlecht
Schdrings werde mid schdrcby umgeschbeicherd

Ledzde Änderung: 13.10.2016
© Prof. Dr. Uwe Schmidd
Prof. Dr. Uwe Schmidt FH Wedel