Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik Einführung in C Grundprinzipien.

Ähnliche Präsentationen


Präsentation zum Thema: "TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik Einführung in C Grundprinzipien."—  Präsentation transkript:

1 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik Einführung in C Grundprinzipien

2 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)1 Agenda Sitzung 2 für den Programmaufbau Grundlegende Datentypen Arrays Statements Funktionen Einstieg in die Stringverarbeitung Programmierstil

3 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)2 1. Zusammensetzung eines C-Programms Header-Dateien Programm-Dateien Libraries

4 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)3 2. Struktur von Programm-Dateien Preprocessor Kommandos Kommentare /* dies ist ein Kommentar */ // dies ist eine einzelne Kommentarzeile (Globale) Variablen )mit möglicher Initialisierung Funktionen besondere Funktion main()

5 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)4 Beispiel #include void hello() // a very simple function { printf (Hello !\n); } main() // all work starts here { hello {}; }

6 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)5 3. Preprocessor-Kommandos Includes #include #include my_header.h Macros #define PI 3.14 #define ARRAY_SIZE 100 #define SUM(x,y) (x+y)

7 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)6 4. Grundlegende Datentypen Leer void Integer –int, unsigned int int i; –long, unsigned long long l; unsigned long ul; –short, unsigned short short s; unsigned short us; Character –char, unsigned char char c; unsigned char uc; Enum enum color{red,green,blue}; enum color favorite; Floating point –float float f; –double double d;

8 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)7 5. Arrays Deklaration #define MAX_ELEMS 10 int n[MAX_ELEMS], *m, *k; double matrix[4][4]; Zugriff matrix[j][k] = (double) n[i]; m = n; k = &(n[5]); n[0] n[1] n[2] n[3] n[4] n[5] n[6] n[7] n[8] n[9] nm k

9 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)8 6. Initialisierungen int i=0; int n[] = {3,2,8,10,4,7}; double mat[][]= {{1.0,0.0,0.0,0.0}, {0.0,1.0,0.0,0.0}, {0.0,0.0,1.0,0.0}, {0.0,0.0,0.0,1.0}};

10 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)9 7. Statements Vergleiche –größer >, kleiner <, gleich ==, ungleich !=, usw... Logische Verknüpfungen –und && –oder || –nicht ! ( ((i == j) && (m!=10)) || !(k >=50) )

11 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)10 7. Statements Zuweisungen #define FALSE 0 i = 10; j = f(x); b = (exp(x)==FALSE) i++; i--; i+=3; i-=5; d*=PI; n/=2; Typkonversionen (casts) i = (int) d; d = (double) i;

12 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)11 7. Statements Bedingungen if (a==b) { ; // do this } else { ; // do that }

13 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)12 7. Statements Switch statements char c = b; switch (c) { case a: ; // do something break; case b: ; // do something else break; case c: ; // do yet something else break; }

14 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)13 7. Statements For-Schleife for (i=0; i

15 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)14 7. Statements While-Schleife While (exp == TRUE) { ; // do something } Do-While-Schleife do ; // do something while (cond == TRUE);

16 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)15 8. Funktionen Spezifikation void myFunctionA (int i, double d, int vals[]) { ; // do something } int myFunctionB (int i, int j, char str[]) { int val; ; // do something return val; } Aufruf myFunctionA (k,f,v); ival = myFunctionB(g,h,s);

17 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)16 9. Stringverarbeitung String-Deklaration #define MAXCHARS 80 char str1[MAXCHARS], str2[MAXCHARS]; Einfachste Manipulationen for (i=0; i

18 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)17 9. Stringverarbeitung Wichtige schon existierende Funktionen #include int strlen (char *str); int strcmp (char *s1, char *s2); char *strcpy (char *dest, char *src); char *strcat (char *dest, char *src);

19 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)18 9. Stringverarbeitung Wichtige Konstante: \n Zeilenende \0 Stringende EOL End Of Line EOF End Of File

20 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)19 9. Stringverarbeitung Eingabe #include sscanf (char *str, char *format,...pointers to variables ); sscanf (str, %d %d %d, &v1, &v2, &v3); auch: fscanf (...), scanf (); Ausgabe sprintf (char *str, char *format,...variables...); sprintf (str, i = %d\n, i); auch: fprintf (...), printf (...);

21 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2)20 9. Stringverarbeitung Konversion #include double strtod (char *str, char **ptr); long strtol (char *str, char **ptr, int base); unsigned long strtoul (char *str, char **ptr, int base); double atof (char *str); int atoi (char *str); long atol (char *str);

22 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2) Programmierstil Jeweils 4 Stellen einrücken. Block {... } Funktion {... }

23 TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik OpenGL Praktikum (S2) Programmierstil Macros nur in großen Buchstaben. Variable und Funktionen beginnen mit kleinem Buchstaben, zusammengesetzte Wörter haben intern jeweils große Buchstaben. Kennzeichnende Vorsilbe bei Funktionen und globalen Variablen.


Herunterladen ppt "TU-MünchenInstitut für Informatik, Lehrstuhl für Angewandte Softwaretechnik Einführung in C Grundprinzipien."

Ähnliche Präsentationen


Google-Anzeigen