Einführung in C EDV1 - 04C-Einführung.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
Imperative Programmierung -Entwicklungswerkzeuge
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik Verteilte Software - Java -
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
Konstruktoren.
Objekte werden als Adressen (Referenzen) übergeben. Dies führt manchmal zu unerwarteten Ergebnissen...
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
Objekte und Arbeitsspeicher
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 3 Klassen, Objekte, Arrays und Kontrollstrukturen Sommersemester 2003 Lars Bernard.
Java-Kurs - 2. Übung Entwicklungsumgebung Struktur von Programmen
Programmieren mit JAVA
Programmieren mit JAVA
Praxis-Repetitorium JAVA zusätzliche, ergänzende Lehrveranstaltung
PKJ 2005/1 Stefan Dissmann Methoden (Motivation) Idee: Identische Programmabschnitte zusammenfassen und mit einem Namen versehen Vorteile: Übersichtlichkeit.
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Zusammenfassung Vorwoche
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Methoden sind mit einem Namen versehene Programmabschnitte besitzen Rückgabetyp, Namen, Parameterliste.
Der C-Präprozessor EDV1 - 04Präprozessor.
Einführung in C EDV1 - 03C-Einführung.
Portierung von Java nach C
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Einführung in Java1 Einführung in JAVA.
Der C-Präprozessor 08-CPräprozessor.
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Bestimmung des ggT zweier Zahlen
Verzweigung.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Sitzung 3: Klassen, Objekte, Arrays und Kontrollstrukturen
Rekursive Funktionen (Fakultät)
Herzlich Willkommen zu „Einführung in die Programmierung mit Java“
Einführung in die Programmiersprache Java
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Informatik Objekte und Klassen 1. Objektorientiertes Modellieren und Programmieren 1.1 Objekte und Klassen.
Objektorientiertes Konstruieren
Variablenkonzept Klassisch, in Java Basistyp
Die Klasse String und ihre Methoden
Starten der Entwicklungsumgebung (IDE)
Learning By Doing Ausnahmebehandlung Exceptions (Ausnahmebehandlung) Typische Fehlverhalten zur Laufzeit: s. Buch S. 287ff -Verwendung von null-Objekten.
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Schleifen
Programmiervorkurs WS 2014 Referenzdatentypen
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
Natürliches Programmieren
Alois Schütte Advanced System Programming 2 Interprozeßkommunikation  2.1 JVM Ablaufumgebung  2.2 Java Native Interface (JNI)  Verwendung von.
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Einführung in Java PING e.V. Weiterbildung Andreas Rossbacher 24. März 2005.
Hello World! Javakurs 2013 Arne Kappen
Von Cem, Maurice und lars
Grundkurs Informatik mit Java
 Präsentation transkript:

Einführung in C EDV1 - 04C-Einführung

Literatur Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags GmbH ISBN 3-89360-622-X 19,80 DM EDV1 - 04C-Einführung

C ist genau so wie JAVA - nur ein wenig anders. JAVA ist von ehemaligen C-Entwicklern mit dem Ziel entwickelt worden, eine strukturiertere und sicherere Sprache als C zu schaffen. Sinngemäßes Zitat: „Von vielen (vorrangig Pascal-) Programmierern wird gesagt die, Sprache C sei chaotisch und unstrukturiert. Das ist auch wahr. Aber! Dadurch werden die Programmierer dazu gezwungen, ordentlich und strukturiert zu programmieren.“  EDV1 - 04C-Einführung

Ähnlichkeiten zwischen JAVA und C Ausdrücke sind sehr ähnlich, gleiche Operatoren mit gleicher Wirkung, in C gibt es zusätzliche Operatoren Der Gebrauch von Klammern und Trennzeichen ist sehr ähnlich. /* ... */ Kommentare Kompliziertere Objekte (Felder, Strukturen, Objekte in C++) werden über Referenzen (Zeiger, Pointer) adressiert. Parameter werden „by value“ übergeben. EDV1 - 04C-Einführung

Unterschiede zwischen JAVA und C Ein- und Ausgabe ist völlig anders. Zeiger müssen explizit genutzt werde. Dynamische Speicherverwaltung muss selbst realisiert werden. C beinhaltet eine Präprozessor. Der C-Compiler erzeugt ausführbare Programme, d.h. sie sind nicht portabel. Hardware-, Betriebssystem- oder Compileränderungen erfordern mindestens die Neuübersetzung des Programms, ggf. sogar Neuentwicklungen. C enthält keine Standardbibliotheken für komplexe Funktionalitäten, wie z.B.: GUIs, Datenbankzugriffe, Graphikfunktionen u.s.w. Diese Funktionalitäten werden durch zusätzliche, oft kommerzielle Pakete realisiert. Diese sind selten Hardware- und Betriebssystemunabhängig. EDV1 - 04C-Einführung

Erstes Beispiel - JAVA public class hello { public static void main (String args []) System.out.println("Hello, world!\nDas ist"+ " unser erstes JAVA-Programm.\nAnzahl der"+ "Parameter : "+args.length); for (int i=0; i<args.length; i++) System.out.println("Parameter["+i+ "] = "+args[i]); } EDV1 - 04C-Einführung

Erstes Beispiel - C int main (int argc, int* argv []) { int i; printf("Hello, world!\nDas ist unser erstes" "C-Programm.\nAnzahl der Parameter : %i\n", argc); for (i=0; i<argc; i++) printf("Parameter[%i] = %s\n",i,argv[i]); } EDV1 - 04C-Einführung

Primitive Datentypen char : ein byte langes Zeichen int : einfach genaue Festkommazahl float : einfach genaue Gleitkommazahl double : doppelt genaue Gleitkommazahl void : kein Wert, 0 byte lang Modifikatoren: signed : vorzeichenbehaftet (Standard) unsigned : vorzeichenfrei long : lange Version des Typs short : kurze Version des Typs (Standard) EDV1 - 04C-Einführung

Datentypen unter Windows Bytes Minimalwert Maximalwert char 1 -128 127 unsigned char 255 short int 2 -32768 32767 unsigned short int 65535 int 4 -2147483648 2147483647 unsigned int 4294967295 float 1.17549E-38 3.40282E+38 double 8 2.22507E-308 1.79769E+308 EDV1 - 04C-Einführung

Unterschiede zu JAVA Die Länge und interne Darstellung der Datentypen hängt vom Compiler, vom Prozessor, vom Betriebssystem und von Einstellungen ab! Alle Typen sind standardmäßig vorzeichenbehaftet auch char! Es existiert kein boolean-Typ. Variablen müssen immer am Anfang einer Prozedur (Methode) vereinbart werden. In C++ können Variable auch im Programmtext vereinbart werden. EDV1 - 04C-Einführung

Logische Ausdrücke Es existiert kein boolean-Typ!  logische Ausdrücke ergeben int-Wert. 0 : false != 0 : true Für alle Werte gilt: Null wird als false und alle anderen Werte werden als true interpretiert. Alle Ausdrücke, auch Zuweisungen liefern einen Wert (wie in JAVA).  Alle Ausdrücke sind in Vergleichen zulässig. Z.B.: if (i==1) { ... } else { ... } if (i =1) { ... } else { ... } EDV1 - 04C-Einführung

Verzweigungen, Zyklen Die Verwendung von folgender Konstrukte ist genau so wie in JAVA: if – then – else for while do-while switch Achtung! Es dürfen keine Variablen in der for – Anweisung definiert werden. Z.B.: int i; ... for (i=0; i<n; i++) ... EDV1 - 04C-Einführung