Grundelemente von C++

Ähnliche Dokumente
Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

S. d. I.: Programieren in C Folie diese Zeichen dürfen verwendet werden in

Informatik: Abschnitt 4

Grundlagen der Programmierung in C Basics

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Informatik: Abschnitt 4

Grundlagen der Programmierung in C Basics

Kapitel 3: Lexikalische Syntax

Elementare Konzepte von

4.2 Basisdatentypen und einfache Anweisungen

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

Kapitel 4: Lexikalische Syntax

Java für Anfänger Teil 2: Java-Syntax. Programmierkurs Manfred Jackel

5 Grundlagen der Java-Syntax

Java für Anfänger Teil 2: Java-Syntax. Programmierkurs Manfred Jackel

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

3 Grundstrukturen eines C++ Programms anhand eines Beispiels

2. Datentypen und Deklarationen

Programmierung. Grundlagen. Tina Wegener, Ralph Steyer. 2. Ausgabe, 1. Aktualisierung, April 2014

Kap 2. Aufbau eines Programms Variablen, Konstanten und Deklarationen

Escape-Sequenzen. Dr. Norbert Spangler

Einheit Lexikalische Grundlagen der Programmiersprache C Lexikalische Einheiten

Programmierkurs Java

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

RO-Tutorien 3 / 6 / 12

Integer Integer Integer (Voreinstellung) Integer Gleitkomma Gleitkomma leer/unbestimmt Integer ohne Vorzeichen Integer (explizit) mit Vorzeichen

2. Programmierung in C

C++ - Einführung in die Programmiersprache Variablen und Konstanten. Leibniz Universität IT Services Anja Aue

2 Imperative Sprachkonzepte

7. Übung zur Vorlesung Grundlagen der Informatik

Elementare Datentypen in C++

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter

3 Die Programmiersprache Java

Moderne C-Programmierung

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Zahlensysteme und Datendarstellung

Einführung in die C-Programmierung

2.5 Primitive Datentypen

Zeichen. Datentyp char. char ch = 'x'; Page 1. Zeichen braucht man zur Verarbeitung von Texten, Namen, Bezeichnungen. Zeichencodes

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen

3. Einführung in C Programmierung Einführung in C Programmierung

3 Die Programmiersprache Java

Programmieren in C / C++ Grundlagen C 2

Welche Informatik-Kenntnisse bringen Sie mit?

Tutorium Rechnerorganisation

1. Der Einstieg in Java. Was heißt Programmieren?

Programmieren in C. -- ALLE Programmiersprachen sind HÄSSLICH -- Deklaration: erst der Datentyp, dann der Variablenname. Semikolon am Ende.

Programmierung I Von Python nach C++

Einstieg in die Informatik mit Java

Sprachvergleich C# / Java / C++

Propädeutikum. Dipl.-Inf. Frank Güttler

JAVA-Datentypen und deren Wertebereich

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Deklarationen in C. Prof. Dr. Margarita Esponda

Kompaktkurs Einführung in die Programmierung. 3. Fundamentale Datentypen, Ausdrücke

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Programmiertechnik Skalare Typen,Variablen, Zuweisungen

Die Programmiersprache C

Grundlagen der Programmierung

Einführung in die Programmierung II. 2. Fundamentale Datentypen, Ausdrücke

Java Kurs für Anfänger Einheit 2 Datentypen und Operationen

Primitive Datentypen und Felder (Arrays)

Ein erstes Java-Programm

Datenbankanwendungsprogrammierung Crashkurs Java

1. Der Einstieg in Java

Hydroinformatik I: Hello World

Programmieren in C Einführung

3. Datentypen, Ausdrücke und Operatoren

[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage,

Programmiersprachen Einführung in C

C/C++ Programmierung

Einführung in die Programmierung Wintersemester 2011/12

2 Einfache Rechnungen

JAVA - Code Konvention - Grundtypen

Numerische Datentypen. Simon Weidmann

Hier finden Sie eine Zusammenfassung der Operatoren von C++ und ihre Bezeichnung bzw. Verwendung. UND ODER. zusammengesetzte Zuweisung Bitoperatoren

Angewandte Mathematik und Programmierung

Java-Schulung Grundlagen

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Programmieren I + II Regeln der Code-Formatierung

Dr. Monika Meiler. Inhalt

Programmieren mit. Java. Lars Knipping. Februar 2002

Die Kunst des schönen Kodierens

Javakurs für Anfänger

Propädeutikum zur Programmierung

Kapitel 3: Variablen

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

C-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07)

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

Lua - Erste Schritte in der Programmierung

Rechnerorganisation. IHS 2015/2016 H.-D. Wuttke, K. Henke

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Kontrollstrukturen. Bedingter Ablauf: if. Bedingter Ablauf: if-else

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1

Thema 1 -- Fortsetzung. Computersystem, Informationsdarstellung

Transkript:

- Zeichensatz - Kommentare - Token - Bezeichner - Schlüsselwörter - Einfache Typen - Literale Ganze Zahlen Reelle Zahlen Wahrheitswerte Zeichen - Variablen und Variablendeklarationen - Benannte Konstanten - Referenzen Programmieren in C++ Informatik FH Trier C++03-1

Zeichensatz bekannte Zeichensätze: - EBCDIC (Extended Binary Coded Decimal Interchange Code) 8-Bit-Code, Verwendung im Großrechnerbereich - ASCII (American Standard Code for Infomation Interchange) 7-Bit-Code, d. h. 128 Zeichen - ISO-8859-1 Latin-1 Erweiterung des ASCII-Zeichensatzes auf 8 Bit, d. h. 256 Zeichen - Unicode 16-Bit-Zeichensatz, d. h. 65536 verschiedene Zeichen darstellbar C++ verwendet ASCII für die interne Darstellung von Zeichen. Mit dem Datentyp char (8 Bits) sind 256 Zeichen darstellbar. Die 128 zusätzlichen Zeichen sind nicht genormt, sondern unterscheiden sich für verschiedene Rechner- und Betriebssystemtypen. Programmieren in C++ Informatik FH Trier C++03-2

Kommentare zwei Arten von Kommentaren: // Dies ist ein sog. Zeilenende-Kommentar. Alle Zeichen von // an bis zum Zeilenende werden ignoriert. /* Dies ist ein Kommentar wie in C. */ Alle Zeichen zwischen /* und dem nächsten */ werden ignoriert. Die Schachtelung von Kommentaren ist nicht möglich. Programmieren in C++ Informatik FH Trier C++03-3

Token Die Token einer Sprache, auch - Symbole oder - lexikalische Einheiten genannt, sind die Wörter, auf denen die Sprache basiert. Beispiele für Token: - Bezeichner - Schlüsselwörter - Operatoren Wortzwischenräume wie - Leerzeichen - Tabulatoren - Zeilenvorschub-Zeichen - Seitenvorschub-Zeichen haben keine Bedeutung, außer daß sie die Token voneinander trennen. Es sei denn, sie sind in Zeichen- oder Zeichenketten- Literalen enthalten. Programmieren in C++ Informatik FH Trier C++03-4

Bezeichner unterliegen den folgenden Regeln: - Ein Bezeichner ist eine Folge von Buchstaben, Ziffern und Unterstrich (_). - Ein Bezeichner beginnt stets mit einem Buchstaben oder Unterstrich. - Groß-/Kleinschreibung wird unterschieden. - Bezeichner dürfen beliebig lang sein. gültige Bezeichner: i this_is_a_most_unusually_long_name _99 _read PI pi Pi ungültige Bezeichner: split Word monthlyincomein$ 5prozent fuenf% Programmieren in C++ Informatik FH Trier C++03-5

Schlüsselwörter Schlüsselwörter sind reservierte Begriffe und dürfen nicht als Bezeichner verwendet werden. Sie bestehen ausschließlich aus Kleinbuchstaben. Verwendet für Typennamen bool char short int long float double void signed unsigned wchar_t Verwendet für benutzerdefinierte Datentypen enum struct union typedef Verwendet für Ausdrücke true new false delete sizeof this Programmieren in C++ Informatik FH Trier C++03-6

Schlüsselwörter Verwendet in Anweisungen Auswahlanweisungen if else switch case break default Wiederholungsanweisungen for continue do while Anweisungen zur Übertragungssteuerung goto return throw Überwachungssysteme (exceptions) try catch Verwendet zur Modifikation von Deklarationen signed unsigned const mutable volatile private protected public Programmieren in C++ Informatik FH Trier C++03-7

Schlüsselwörter Verwendet als Speicherklassenbezeichner auto extern register static Verwendet für Klassen oder Methoden class friend inline virtual operator template typename export Verwendet für Namensräume namespace using Verwendet für explizite Typanpassungen const_cast reinterpret_cast explicit dynamic_cast static_cast Verwendet zur Typerkennung zur Laufzeit typeid Verwendet zum Einfügen von Assembler-Anweisungen asm Programmieren in C++ Informatik FH Trier C++03-8

Einfache Typen Typ Inhalt typische Größe bool true oder false 8 Bit char ASCII-Zeichen 8 Bit wchar_t lange Zeichen (z.b. Unicode) 16 Bit short Integer mit Vorzeichen 16 Bit int Integer mit Vorzeichen 32 Bit (oder 16 Bit) long Integer mit Vorzeichen 64 Bit (oder 32 Bit) float IEEE 754 Fließpunktzahl 32 Bit double IEEE 754 Fließpunktzahl 64 Bit long double IEEE 754 Fließpunktzahl 80 Bit Die tatsächlich verwendete Anzahl von Bits variiert je nach Rechnersystem; sie ist implementierungsabhängig. Der C++-Standard legt fest: - Bits(short) <= Bits(int) <= Bits(long) - Genauigkeit(float) <= Genauigkeit(double) <= Genauigkeit(long double) Durch das Schlüsselwort unsigned werden ganze Zahlen ohne Vorzeichen definiert, z.b. unsigned long. Programmieren in C++ Informatik FH Trier C++03-9

Literale In C++ besitzt jeder Typ Literale, die für die Konstanten des Typs stehen. Ganze Zahlen (short, int, long) Ganzzahl-Literale werden durch Zeichenketten beschrieben, die aus oktalen, dezimalen oder hexadezimalen Ziffern bestehen. Welche Basis eine Zahl hat, wird durch die vorderen Zeichen bestimmt: - führende 0 (Null) => Oktalzahl (Basis 8) - 0x oder 0X am Anfang => Hexadezimalzahl (Basis 16) - alle anderen Ziffern => Dezimalzahl (Basis 10) Die folgenden Zahlen haben alle den gleichen Wert: 29 035 0x1D 0X1d Die Endungen l bzw. L bedeuten long und die Endungen u bzw. U bedeuten unsigned. Programmieren in C++ Informatik FH Trier C++03-10

Literale Ganze Zahlen (short, int, long) Der Datentyp eines ganzzahligen Literals hängt von dessen Form, Wert und Endung ab: - Falls das Literal dezimal ist und keine Endung hat, hat es den ersten der Datentypen int, long int oder unsigned long int, der diesen Wert darstellen kann. - Falls das Literal oktal oder hexadezimal ist und keine Endung hat, hat es den ersten der Datentypen int, unsigned int,long int oderunsigned long int, der diesen Wert darstellen kann. - Falls das Literal die Endung u oder U besitzt, hat es den ersten der Datentypen unsigned int oder unsigned long int, der diesen Wert darstellen kann. - Falls das Literal die Endung l oder L besitzt, hat es den ersten der Datentypen long int oder unsigned long int, der diesen Wert darstellen kann. - Falls das Literal eine der Endungen ul, lu, Ul, lu, ul, Lu, UL oder LU hat, ist der Datentyp unsigned long int. Bsp.: Literal Typ auf Maschinen Typ auf Maschinen mit 32-Bit-int mit 16-Bit-int und 32-Bit-long 100000 int long int 0xA000 int unsigned int 100000L long int long int 0xA000U unsigned int unsigned int Programmieren in C++ Informatik FH Trier C++03-11

Literale Reelle Zahlen (float, double) Gleitkommazahlen werden durch Dezimalzahlen mit optionalem Dezimalpunkt dargestellt, denen ein Exponent folgen kann. Es muss mindestens eine Ziffer vorhanden sein. Die folgenden Literale beschreiben alle die gleiche reelle Zahl: 18. 1.8e1.18E2 Gleitkomma-Literale ohne Suffix sind vom Typ double. Ein angehängtes kleines oder großes F spezifiziert eine Konstante vom Typ float. Ein angehängtes kleines oder großes L spezifiziert eine Konstante vom Typ long double. Wahrheitswerte (bool) true und false werden von Vergleichen wie z. B. < zurückgeliefert Programmieren in C++ Informatik FH Trier C++03-12

Literale Zeichen (char, signed char, unsigned char) char bedeutet systemabhängig entweder signed char oder unsigned char. Zeichen-Literale werden zwischen zwei Apostrophen (auch Hochkomma genannt) geschrieben; z. B. 'H'. Einige Sonderzeichen können durch spezielle Ersatzdarstellungen (Escape-Sequenzen) ausgedrückt werden. Ersatzdarstellung Zeichen Erläuterung \a BEL Signalton \b BS backspace (Zeichen zurück) \f FF Seitenvorschub (engl. form feed) \n LF Zeilenvorschub (engl. newline oder line feed) \r CR Wagenrücklauf (engl. carriage return) \t HT (horizontaler) Tabulator \v VT Zeilensprung (engl. vertical tabulator) \" " Anführungszeichen oben (engl. double quote) \' ' Apostroph (engl. single quote) \\ \ inverser Schrägstrich (engl. backslash) \ddd Zeichen mit dem oktalen ASCII- Wert ddd (0000 <= ddd <= 0377) \xdddd \Xdddd Zeichen mit der hexadezimalen Codierung dddd (0x0000 <= dddd <= 0xffff) Programmieren in C++ Informatik FH Trier C++03-13

Literale Zeichen (wchar_t) Der Datentyp wchar_t ist eine Erweiterung des Datentyps char. Wide characters sind für Zeichensätze gedacht, bei denen ein Byte nicht zur Darstellung eines Zeichens ausreicht, z.b. den Unicode-Zeichensatz. sizeof(wchar_t) ergibt typischerweise 2. Damit sind 65536 verschiedene Zeichen darstellbar. Ein Zeichen-Literal vom Typ wchar_t beginnt mit einem L, z. B. L'??'. Programmieren in C++ Informatik FH Trier C++03-14

Variablen und Variablendeklarationen Eine Variable benennt einen bestimmten Speicherbereich. Eine Variable besteht aus den folgenden drei Angaben: - Name radius - Datentyp float - Wert 17.5e3F Der Name ist ein Bezeichner und identifiziert die Speicheradresse. Der Datentyp legt fest, in welchem Wertebereich der Wert der Variablen liegen kann. Der Wert der Variablen ist der momentane Inhalt des Speicherbereichs. Programmieren in C++ Informatik FH Trier C++03-15

Variablen und Variablendeklarationen Variablen müssen vor ihrer Verwendung deklariert werden. Sie können bei der Deklaration initialisiert werden. Syntax der Variablendeklaration (vereinfacht): Modifizierer-Liste Typname Bezeichner-Liste ; Bezeichner-Liste ist eine Folge von Bezeichnern, die durch Komma getrennt sind. Für jeden Bezeichner kann ein Initialisierungsausdruck angegeben werden. Beispiele: int daysinmonth, daysinyear = 365; short smallint; long bigint; int one = 1, two = 2, three; Programmieren in C++ Informatik FH Trier C++03-16

Benannte Konstanten Häufig verwendete Konstanten kann man benennen und dann im Programm diesen Bezeichner verwenden. Dies erhöht die Lesbarkeit und Flexibilität des Programms. Zur Definition von benannten Konstanten wird der Modifizierer const benutzt. Die Konstante PI kann folgendermaßen definiert werden: const double pi = 3.141592654; Der Wert von pi kann im Programm nicht verändert werden. Die Anweisung pi = 0.05; führt zu einer Fehlermeldung. Programmieren in C++ Informatik FH Trier C++03-17

Referenzen Eine Referenz ist ein Datentyp, der einen Verweis auf ein Objekt liefert. Eine Referenz bildet einen Aliasnamen für ein Objekt, über den es ansprechbar ist. Das Objekt hat damit zwei Namen. Beispiel: int intvalue; int &ref = intvalue; Die folgenden beiden Anweisungen haben dann den gleichen Effekt: intvalue = 100; // aendert intvalue ref = 100; // aendert intvalue Referenzen müssen bei der Deklaration initialisiert werden: int &ref; ist nicht erlaubt. Eine Referenz auf eine Referenz und die Neuinitialisierung einer Referenz sind nicht möglich. Programmieren in C++ Informatik FH Trier C++03-18