Betriebssysteme Teil E: Überleben trotz C
|
|
- Katja Bayer
- vor 6 Jahren
- Abrufe
Transkript
1 Betriebssysteme Teil E: Überleben trotz C
2 Literatur [E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, [E-2] M.K. Johnson, E.W. Troan: Anwendungen entwickeln unter Linux, Addison-Wesley, 1999 [E-3] Prinz, Peter; Kirch-Prinz, Ulla: C kurz&gut. O'Reilly, 2004 [E-4] B.W. Kernighan, D.M. Ritchie: The C Programming Language, Prentice- Hall, 2nd edition, 1988 [E-5] htm [E-6] C/index.html Weitere Literatur: 2
3 Links [a] [b] [c] [d] Rationale for American National Standard for Information Systems Programming Language C The Development of the C Language C-Programmierung 3
4 Übersicht Versionen von C (und etwas Geschichte) Grunddatentypen Ausdrücke Klammern Pointer und so In diesem Teil wird das Überleben trotz C vermittelt dies ist keine Einführung 4
5 Es gibt verschiedene Versionen von C Die Urversion ist die von Kernighan und Ritchie - K&R genannt (1978). Dann gibt es mehrere ANSI-Versionen: 1989 (ISO 9899, ANSI X3.159) 1995 (Addendum zu C90) 1999 (ISO 9899:1999) C99 genannt In diesem Teil wird die ANSI-Version von 1995 behandelt, denn diese wird von allen guten C-Compilern unterstützt. C99 wird nicht von allen Compilern im vollem Umfang unterstützt. 5
6 Grunddatentypen I Typ Bytegröße Bereich char , unsigned char int 2 oder , ca. -2*10**9..2*10**9 unsigned int 2 oder , ca. 0..4*10**9 long 4 ca. -2*10**9..2*10**9 unsigned long 4 ca. 0..4*10**9 float 4 6 Stellen Genauigkeit double 8 15 Stellen Genauigkeit long double Stellen Genauigkeit 6
7 Grunddatentypen II - Integer "Normale Zahlen": +1, -23 Oktal: Beginnend mit 0, z.b Hexadezimal: Beginnend mit 0x, z.b. 0x5f Suffixe: L (für long) und U (für unsigned) Beispiele: 3L (long) 3UL (unsigned long) 0xFU (unsigned int) 7
8 Grunddatentypen III - char Beispiele: 'x' oder 'f' Ersatzdarstellung: '\zzz', wobei zzz eine Oktalzahl ist Ersatzdarstellung: '\xzzz', wobei zzz eine Hexadezimalzahl ist Sonderzeichen mit '\z', wobei z sein kann: n Newline ('\n') c carriage return ('\c') 0 Null Byte ('\0') \ Back slash ('\\') ' Quote ('\'') Diese Sonderzeichen können auch innerhalb von Strings vorkommen. Präfix L zeigt Zeichen vom Typ wchar_t (Multibyte-Zeichen) an. Beispiele: L'a' L'\x123' 8
9 Grunddatentypen IV - Strings Jeder String der Form "<string>" wird einzeln in einem globalen Bereich im RAM abgelegt. Er besteht aus einem Feld von char, dessen letztes Element immer ein Null-Byte '\0' ist. Der Typ eines Strings ist "char *" (Adresse von Char) Name H a l l o! \0 9
10 Grunddatentypen V - Strings Beispiel: char *Vorname, *Nachname; Vorname= "Elma"; Nachname= "Elma"; if (Vorname == Nachname) {... Es werden zwei char-felder an unterschiedlichen Adressen mit denselben Zeichen ("Elma") angelegt. Vorname und Nachname haben deshalb unterschiedliche Adressen. In der if-abfrage werden die Adressen verglichen, was bedeutet, dass der then-teil nie durchlaufen wird. Beachte: Java ist hier anders. Aber auch dort gibt es die Probleme mit ==. 10
11 Grunddatentypen VI - Strings Strings können auch aus Multibyte-Zeichen bestehen. Dann haben sie den Präfix L (wide string literal). Beispiel: "Hallo world!\n" L"Hallo world!\n" Dann noch etwas: Das Zusammensetzen von Stringwerten erfolgt durch Hintereinanderschreiben. Beispiel: "Hallo" "world!" "\n" 11
12 Ausdrücke I Zuweisung ist "=", Vergleich ist "==" "a = b" ist eine Zuweisung mit der Wert von b "a == b" ist ein Vergleich mit den Werten true/false Ein schlechter Stil ist: "a = b = c" "a == b == c" "a == b = c" Autoinkrement/Autodekrement ++Variable / --Variable: Vor dem Auslesen der Variable Variable++ / Variable--: Nach der Auswertung des Ausdrucks Ein schlechter Stil ist: "a= ++b + ++b;" "++b= b b;" Falsch ist: "a= ++b--;" 12
13 Ausdrücke II Die Reihenfolge der Auswertung bei kommutativen Operatoren (+ und *) ist undefiniert. Beispiel (schlechter Stil) f1(17) + f2(2) Wenn eine der beiden Funktionen Seiteneffekte hat, so ist dieses Programmstück falsch. Bei boole'schen Ausdrücken wird nur solange ausgewertet bis das Ergebnis klar ist; der Rest wird übersprungen (short cut evaluation). Beispiele (schlechter Stil) (a==b) && f1(8) Falls der erste Teil falsch ist, wird der zweite Teil nie ausgeführt. (a==b) f1(8) Falls der erste Teil wahr ist, wird der zweite Teil nie ausgeführt. 13
14 Explizite Typanpassungen: cast Um explizit einen Typ an einen anderen (geforderten) anzupassen, wird ein cast verwendet: (<Neuer Typ>)Variable Beispiele: int i; long li; char c; i= (int)li; li= (unsigned char) c; li= (unsigned long) c; Ein schlechter Stil ist: int awert; char *str; str= "abc"; awert= (int) str; /* Adresse wird zum INT */ 14
15 Bitweise Operationen I Operator Logisch Bitweise Und && & Oder Nicht! Shift links << Shift rechts >> Bei logischen Ausdrücken ist das Ziel am Ende einen Ausdruck zu haben, der gleich 0 (False) oder ungleich 0 (True) ist. Bei bitweisen Ausdrücken kommt es darauf an die einzelnen Bits zu setzen oder abzufragen, unabhängig davon, ob der gesamte Ausdruck am Ende 0 oder ungleich 0 ist. 15
16 Bitweise Operationen II - Beispiele 1. if ((a<b)&&(d>=0)) { if (a & 5) { if ((a & 5) == 5) { Zu 1: normale Abfrage von Werten Zu 2: Prüfung, ob eines der Bits 0 oder 2 gesetzt ist: falls es so ist, ist der Ausdruck wahr (ungleich 0), sonst 0 (false). Äquivalent (besser, aber ineffizienter): if (((a&1)==1)&&((a&4)==4)) {... Das Setzen der Klammern bestimmt klar die Bindungen der Operatoren. Zu 3: Prüfung, Bit 0 und Bit 2 gleichzeitig gesetzt sind, dann wahr, sonst false 16
17 Implizite Typanpassungen Die Division zweier ganzer Zahlen ist wieder eine ganze Zahl. Immer sich Klarheit über die Bedeutung verschaffen! Beispiele 6 / % / Reihen/Rangfolge der Typen bei impliziten Anpassungen: int unsigned int long unsigned long float double 17
18 IF-Konstrukt if (Bedingung) {... } else {... } if (Bedingung) {... } Das IF-Konstrukt entspricht dem von Java. Immer die geschweiften Klammern benutzen! Hinter jeder Anweisung innerhalb der Blöcke muss ein ";" stehen, nicht jedoch nach einem IF-Konstrukt. 18
19 Switch-Konstrukt switch(expression) { case Const:...; break; case Const:...; break; default:...; } Dieses Konstrukt entspricht im Prinzip dem von Java. Expression ist ein ganzzahliger Ausdruck.. Const kann auch ein konstanter, ganzzahliger Ausdruck sein. Jeder Fall schließt mit einem break ab. Fehlt es, so werden die hintereinander stehenden Teile ausgeführt. 19
20 For-Schleife break/continue for (Init; Condition; Increment) {... } Das For-Konstrukt entspricht dem aus Java. Ein break im Schleifenkörper bricht die Schleife ab, in der das break steht. Ein continue ist ein Sprung zur Prüfung der Abbruchbedingung. 20
21 Klammern () und {} 21
22 Erläuterungen I Die runden Klammern steuern die Bindungsstärke innerhalb von Ausdrücken Aufpassen! Eine Zuweisung bindet nicht so stark wie ein Vergleich. Einrückungen haben für die syntaktische Zusammenfassung von zusammengesetzten Befehlen keine Bedeutung! Zusammengesetzte Befehle oder Blöcke entstehen durch Klammern mit {}. Also: welche der obigen Programmversionen sind falsch? 22
23 Erläuterungen II Aus diesen Gründen wurden hier alle Varianten mit Blöcken, also mit {} angegeben. Dies wird dringend empfohlen. Beispiel1: s= string; while(*s!='\0') s++; printf(" " ); Beispiel2: s= string; while(*s!='\0') { s++; } printf(" " ); 23
24 Denken Sie noch nicht einmal daran Es gibt noch Labels (Sprungmarken) sowie das goto dazu. Weiterhin können Sie aus geschachtelten Schleifen heraus in einen der umfassenden Schleifenblöcke springen. Weiterhin können Sie von einer Stelle innerhalb eines Blocks an eine beliebige Stelle innerhalb des umfassenden Blocks springen. Selbstverständlich können Sie das programmieren einige Menschen tun das tatsächlich. Es gibt sogar einzelne Situationen, in denen dies sogar sinnvoll ist aber es erhöht Ihre psychische Überlebensrate, wenn Sie dies nicht tun. 24
25 Deklarationen Speicherklassen I Klasse Sichtbarkeit Erläuterungen Funktion Datei auto Block - Anlegen der Variablen auf dem Stack Lebensdauer ist der korrespondierende Block register Block - Wie auto, nur dass versucht wird, diese Variable in ein Register zu legen static Block Datei Automatisches Anlegen der Variablen in einem globalen Bereich extern Block Programm Automatisches Anlegen der Variablen auf dem Heap Funktion bedeutet: Datei bedeutet: Es wird innerhalb einer Funktion deklariert. Es wird außerhalb einer Funktion deklariert. 25
26 Deklarationen Speicherklassen II 26
27 Arrays - Beispiele (1) char str[4]; (2) char str[4]= "abc"; (3) char str[]= "abc"; (4) char str[]= {'a', 'b', 'c', '\0'}; In (1) wird ein Array von 4 Elementen mit dem Index von 0 bis 3 (!) deklariert. In (2) wird dieses mit den Werten aus dem String vorbelegt. In (3) wird die Länge durch die Vorbelegung bestimmt. Dies ist zu empfehlen. (3) und (4) sind äquivalent. Doch beachten Sie die betreffende Speicherklasse. 27
28 Arrays und Pointer I (1) int iarr[4]= {1,2,3,4}; (2) int *pint= iarr; (3) &iarr[0] (4) iarr (5) &iarr[2] (6) iarr+2 (7) pint+2 (8) sizeof(iarr) (9) sizeof(pint) In Zeile (3) und (4) wird auf dasselbe Element verwiesen. Desgleichen in Zeilen (5), (6) und (7). In Zeile (8) wird die Länge des Arrays, nicht die Größe des Zeigers wie in (9) bestimmt. 28
29 Arrays und Pointer II Name[Expression] *(Name+Expression) Pointer+Expression Pointer+Expression*Größe Ein Feldzugriff wird intern in ein Zugriff über einen Zeiger mit Dereferenzierung umgewandelt. Beides ist in C äquivalent. Zur Berechnung der Adresse wird der INT-Wert mit der Größe des Datentyps, auf dessen Objekte der Zeiger zeigt, multipliziert. (Das ist die berühmte Pointer-Arithmetik) 29
30 Arrays und Pointer III 30
31 Arrays und Pointer IV Was passiert bei: (1) i= iarry[-1]; (2) i= *(pint-1); (3) pint= (int *) ; (4) i= *pint; Es ist auch möglich mit negativen Indizes zu arbeiten (pfui); dann wird einfach auf die Zellen vor dem Feld zugegriffen, Zeilen (1) und (2). Es lassen sich auch Adresswerte als Integer einem Zeiger zuweisen und benutzen, Zeilen (3) und (4). Selbstverständlich können Sie das programmieren einige Menschen tun das tatsächlich. Es gibt sogar einzelne Situationen, in denen dies sinnvoll ist aber es erhöht Ihre psychische Überlebensrate, wenn Sie dies lassen. 31
32 Arrays und Pointer V char *str= "abc"; int cnt= 0; for(ind=0; ind<4; ind++) { str[ind] cnt++; } char *str= "abc"; int cnt= 0; for(pc= str;*pc!='\0';pc++) { *pc cnt++; } Beide Varianten tun dasselbe. Die zweite ist sehr beliebt, da sie schneller ist. 32
33 Structs I (1) struct { char Vorname[30]; char Nachname[40]; int Alter; } heinz, elvira; (2) struct Person { char Vorname[30]; char Nachname[40]; int Alter; }; struct Person heinz, elvira; (3) struct Person heinz= { "Heinzel","Mann",17}; Zeilen (1) und (2) sind äquivalent Eine eigene Deklaration des Structs in (2) ist aber besser In (3) wird die Struktur aus (2) vorbelegt. 33
34 Structs II (1) struct Person { char Vorname[30]; char Nachname[40]; int Alter; }; struct Person heinz, elvira; (2) heinz.nachname (3) struct Person *pelvira= &elvira; (4) pelvira->nachname (5) (*pelvira).nachname Zeile (2) zeigt den Zugriff auf die Komponenten. In (3) wird über einen Zeiger zugegriffen. Die beiden Varianten (4) und (5) sind äquivalent; das Pfeil- Konstrukt (4) ist aber besser. 34
35 Structs III - Bitfelder struct Register { unsigned int bit0_2: 3; unsigned int bit3_7: 5; signed int bit8_15: 8; }; Die Bit-Breite der Komponenten wird nach einem Doppelpunkt angegeben. Die Bit-Bereiche werden "gepackt" - ähnlich zu Pascal. 35
36 Unions (1) union Number { long l; float d; }; (2) union Number zahl = { 10L }; (3) zahl.l (4) zahl.d Die deklarierten Bereiche liegen im RAM zur Laufzeit übereinander. Sie können ohne Konvertierung in der jeweiligen Interpretation gelesen und geschrieben werden. Zeile (3) wird 10L als long interpretiert, ohne Konvertierung! Zeile (4) wird 10L als float interpretiert, ohne Konvertierung! 36
37 Pointer I 37
38 Schrittweiser Aufbau 38
39 Pointer II - Hinweise Zwischen Zustand zur Laufzeit und Deklaration unterscheiden! Die gewollten Verbindungen per Adressen müssen während der Laufzeit schrittweise aufgebaut werden. Dringende Empfehlung: Jeden Schritt von der Deklaration bis zum vollständigen Aufbau einer verzeigerten Struktur auf dem Papier zeichnen und schrittweise das Vorgehen kontrollieren. Achtung! Die meisten Programmierfehler werden im Zusammenhang mit Zeigern gemacht! Hier heißt es: Genau, pingelig genau sich die Befehle ansehen! 39
40 Bearbeiten von Feldern mit Zeigern 40
41 Schritte des Programms 41
42 Zeiger und Auto-Inkrement 42
43 Tauschen der Werte von zwei Variablen 43
44 Zeiger und Felder 44
45 Argumentliste I 45
46 Argumentliste II Der Grund für den komplizierten Aufbau der Argumente für das "Hauptprogramm" main() liegt darin, dass von Aufruf zu Aufruf unterschiedlich viele Parameter übergeben werden. So ein in der Länge unbegrenztes Feld ist dazu gut geeignet. Dasselbe Prinzip wird für den Zeiger auf das Environment environ benutzt: extern char *environ[]; Hier haben die Strings den Aufbau: KEY=WERT. 46
47 Im Dickicht der Pointer... 47
[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.
Literatur [E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.zip [E-2] M.K. Johnson, E.W. Troan: Anwendungen
MehrProgrammieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff
Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer
MehrAlgorithmen zur Datenanalyse in C++
Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
MehrGrundlagen. Die Komponenten eines C Programms. Das erste Programm
Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen
Mehr3. Grundanweisungen in Java
3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen
MehrEinführung in die Programmierung mit VBA
Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrDie Programmiersprache C Eine Einführung
Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert
MehrMIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT
MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 Datendefinitionen b) Unterteilung nach Typen: (Teil 2) void leer Pointer 2/4 Bytes Adresse von Objekten Arrays bei allen Datentypen
MehrOperatoren (1) Operatoren (2)
Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
MehrWelche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
MehrDr. Monika Meiler. Inhalt
Inhalt 3 C-Ausdrücke...3-2 3.1 Arithmetische Ausdrücke...3-3 3.2 Wertzuweisungen...3-5 3.3 Inkrementieren und Dekrementieren...3-6 3.4 Logische Ausdrücke (Bedingungen)...3-7 3.5 Bedingte Ausdrücke...3-8
MehrFunktionales C++ zum Ersten
Funktionales C++ zum Ersten WiMa-Praktikum 1, Teil C++, Tag 1 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: christoph.ott@uni-ulm.de Institut für Angewandte Informationsverarbeitung 26.08.08
MehrJava: Eine kurze Einführung an Beispielen
Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse
MehrSchachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A
2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 9. Zeiger Arbeitsspeicher / Adressen Der Arbeitsspeicher des Computers (RAM) besteht aus einem Feld von Speicherzellen, beginnend bei Adresse
MehrKapitel 3: Variablen
Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber
MehrProgrammiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm
Programmiersprachen Einführung in C Teil 2: Prof. Dr. int main (int argc, char *argv[]) int sum = 0; for (i = 0; i
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:
MehrKapitel 05. Datentypen. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 05 Datentypen Inhalt des 5. Kapitels Datentypen 5.1 Einleitung 5.2 Eingebaute Datentypen Übersicht Die Datentypen char, float und double Standardwerte Operatoren Konversion / Type-Cast Datentyp
MehrNumerische Datentypen. Simon Weidmann
Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die
MehrArbeitsblätter für die Lehrveranstaltung OOP JAVA 1
Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
MehrEinführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
Mehr7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});
S. d. I.: Programieren in C Folie 7-1 7 Funktionen 7.1 Definition Prototyp-Syntax: Speicherklasse Typ Name (formale Parameter); der Funktions-Prototyp deklariert eine Funktion, d.h. er enthält noch nicht
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Variablen Datentypen Werte Ausdrücke Operatoren
MehrSpeicherklassen (1) Lokale Variablen
Speicherklassen (1) Lokale Variablen Lokale Variablen beschränken sich auf die Funktionen, in denen sie definiert werden Sind in der Funktion gekapselt können also nur in der Funktion verändert werden
MehrProgrammieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf
MehrTutorium Rechnerorganisation
Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrProgrammiertechnik Kontrollstrukturen
Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrImperative Programmierung in Java. Algorithmen und Datenstrukturen II 1
Imperative Programmierung in Java Algorithmen und Datenstrukturen II 1 Mini-Java Ein Mini-Java Programm besteht aus genau einer Klasse. In dieser Klasse gibt es genau eine main-methode. Folgende Konstrukte
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Kontrollstrukturen Was sind Kontrollstrukturen Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrFH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken
4 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Blöcke Blöcke erweitern einzelne Anweisungen, etwa bei Kontrollstrukturen später Beispiel: Einzelne Anweisung: anweisung; Erweiterung
Mehr1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrGrundlagen der Programmierung Teil1 Einheit III Okt. 2010
Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die
MehrEinführung in die Programmierung Wintersemester 2011/12
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while
Mehr3. Anweisungen und Kontrollstrukturen
3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen
MehrProgrammieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff
Programmieren in C Speicher anfordern, Unions und Bitfelder Prof. Dr. Nikolaus Wulff Vergleich: Felder und Strukturen Felder müssen Elemente vom selben Typ enthalten. Strukturen können Elemente unterschiedlichen
MehrModProg 15-16, Vorl. 5
ModProg 15-16, Vorl. 5 Richard Grzibovski Nov. 18, 2015 1 / 29 Übersicht Übersicht 1 Logische Operationen 2 Priorität 3 Verzweigungen 4 Schleifen 2 / 29 Logische Werte Hauptkonzept: Besitzt ein C-Ausdruck
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrInteger Integer Integer (Voreinstellung) Integer Gleitkomma Gleitkomma leer/unbestimmt Integer ohne Vorzeichen Integer (explizit) mit Vorzeichen
1 C-Schlüsselwörter Schlüsselwörter sind in allen Programmiersprachen reservierte Wörter. In C sind auch alle Namen _[A-Z]... und... reserviert, auch _... bereichsweise. Weiterhin durch die Standard-
MehrJava - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue
Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem
MehrProgrammierkurs Java
Programmierkurs Java Kontrollstrukturen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Kontrollstrukturen Wichtig: bedingte Ausführung
MehrWie entwerfe ich ein Programm?
Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +
MehrAndroid-Apps Gegenüberstellung Delphi java
Android-Apps Gegenüberstellung 2/9 Grundsätzliches etc. Groß-/Kleinschreibung egal sensitiv! Zuweisung := = Kommentare // // { } /* */ Zeichenkettenbegrenzer: 'text' "text" Inkrementieren / Dekrementieren
MehrSchleifen in C/C++/Java
Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.
MehrJAVA-Datentypen und deren Wertebereich
Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).
MehrProgrammierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
MehrInhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler
Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale
MehrModerne C-Programmierung
Xpert.press Moderne C-Programmierung Kompendium und Referenz Bearbeitet von Helmut Schellong 1. Auflage 2005. Buch. xii, 280 S. ISBN 978 3 540 23785 3 Format (B x L): 15,5 x 23,5 cm Weitere Fachgebiete
MehrProgrammieren in C / C++ Grundlagen C 2
Programmieren in C / C++ Grundlagen C 2 Hochschule Fulda FB AI Wintersemester 2016/17 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI Anweisung / Ausdruck 1 Programm setzt sich aus vielen Anweisungen
MehrDie for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben
18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (
MehrII. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
MehrKap 9. Bitoperationen und -strukturen
Kap 9. Bitoperationen und -strukturen 9.1 Anwendung von Bits Im Gegensatz zu den üblicherweise Byte-orientierten Daten gibt es auch Bit-Anwendungsbeispiele Statusanzeigen bei Ein-/Ausgabe (Stream-Klassen)
MehrEINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15
EINI LW/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
MehrEinführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann
Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann
MehrTag 3 Repetitorium Informatik (Java)
Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable
1 Kapitel 3 Grunddatentypen, Ausdrücke und Variable 2 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen Datenstrukturen werden mit einem
MehrDie Programmiersprache C99: Zusammenfassung
Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach
MehrEinführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrProgrammieren I + II Regeln der Code-Formatierung
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden
MehrElementare Konzepte von
Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)
MehrC- Kurs 04 Anweisungen
C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm
MehrTHE GO PROGRAMMING LANGUAGE. Michael Karnutsch & Marko Sulejic
THE GO PROGRAMMING LANGUAGE Part 1: Michael Karnutsch & Marko Sulejic Gliederung Geschichte / Motivation Compiler Formatierung, Semikolons Variablen, eigene Typen Kontrollstrukturen Funktionen, Methoden
MehrBeispiel. Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio)
Beispiel Beispiel: Namensliste konvertieren (Karl Egon Meier Meier, Karl Egon). s/(.*) (.*)/$2, $1/; Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio) s/(.*) (.*)/$2, $1/; s/(.*) ([a-z]+
MehrProblem: Keine Integers in JavaCard. ToDo: Rechnen mit Bytes und Shorts
Kapitel 6: Arithmetik in JavaCard Problem: Keine Integers in JavaCard ToDo: Rechnen mit Bytes und Shorts Java SmartCards, Kap. 6 (1/20) Hex-Notation 1 Byte = 8 Bit, b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 0101
MehrTutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2
Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen
MehrAuD-Tafelübung T-B5b
6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit
MehrHerzlich Willkommen. Über mich Termine Literatur Über PHP
Über mich Termine Literatur Über PHP Herzlich Willkommen Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski
MehrJavaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden
Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter
Mehr1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri 2009-11-05 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Variablen Datentypen Werte Operatoren und Ausdrücke Kontrollstrukturen: if, while
MehrC Überlebenstraining
C Überlebenstraining Dies ist nur ein Schnellkurs in C, der genug Einstiegswissen vermitteln soll, daß weiterführende Literatur schnell benutzt werden kann. Dies ist kein vollständiger Programmier oder
MehrEinstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
MehrPrimitive Datentypen und Felder (Arrays)
Primitive Datentypen und Felder (rrays) Primitive Datentypen Java stellt (genau wie Haskell) primitive Datentypen für Boolesche Werte, Zeichen, ganze Zahlen und Gleitkommazahlen zur Verfügung. Der wichtigste
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),
MehrEinführung in die Programmierung Wintersemester 2008/09
Einführung in die Programmierung Wintersemester 28/9 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Darstellung von Information Inhalt Einfache Datentypen
MehrÜbersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!
!!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C Marcel Arndt arndt@ins.uni-bonn.de Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include
MehrC-PROGRAMMIERUNG - STRUKTUREN. Marcel Lebek
1 C-PROGRAMMIERUNG - STRUKTUREN Marcel Lebek EINLEITUNG Strukturen Was sind Strukturen? Syntax Verwaltung im Speicher Bitfelder Beispiel: Liste Unions Aufbau Unterschiede Wann Sinnvoll? Quellen 2/22 WAS
MehrImperative Programmierung in Java. Algorithmen und Datenstrukturen II 1
Imperative Programmierung in Java Algorithmen und Datenstrukturen II 1 Mini-Java Ein Mini-Java Programm besteht aus genau einer Klasse. In dieser Klasse gibt es genau eine main-methode. Folgende Konstrukte
MehrDr. Monika Meiler. Inhalt
Inhalt 4 C-Anweisungen...4-2 4.1 Ausdrucksanweisungen...4-3 4.2 Zusammengesetzte Anweisungen (Anweisungsblöcke)...4-3 4.3 Schleifenanweisungen...4-4 4.3.1 while - Schleife...4-4 4.3.2 do - Schleife...4-5
MehrEinheit Lexikalische Grundlagen der Programmiersprache C Lexikalische Einheiten
Einheit Lexikalische Grundlagen der Programmiersprache C Lexikalische Einheiten Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik R. Spurk (Informatik)
Mehr4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan)
4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung 4-1 4.1 Anweisungen Ein Programm besteht
MehrWertebereich und Genauigkeit der Zahlendarstellung
Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden
Mehr