Glossar

TODO: C-Bibliotheksnamen einsetzen

TODO: C++-Bibliotheksnamen einsetzen

In diesem Abschnitt werden in alphabetischer Reihenfolge wichtige Begriffe vorgestellt, und bei Bedarf wird auf weitere Erklärungen verwiesen.

Damit wird ein Mittelweg beschritten zwischen einem Stichwortverzeichnis (in dem alle Begriffe ohne Erklärung und Verweise auf zugehörigen Text stehen) und einer genauen Beschreibung (die für eine erste Information zu unübersichtlich ist).

Begriffe aus folgenden Gruppen werden in der gezeigten Form aufgeführt:

* beispielname
(Schlüsselwort C und C++)
So wird ein Schlüsselwort aus C und C++ beschrieben.
* beispielname
(Schlüsselwort C++)
So wird ein Schlüsselwort beschrieben, das zu C++ gehört (aber nicht zu C nach ANSI-Standard, auch wenn vielleicht manche Implementationen das Wort bereits verwenden)
* beispielname oder Begriff
(C- und C++-Bibliothek)
Ein beispielname oder ein Begriff aus der Standardbibliothek von C ebenso wie von C++.
* beispielname oder Begriff
(C++-Bibliothek)
Ein beispielname oder ein Begriff aus der Standardbibliothek von C++.
* beispielname oder Begriff

sonstiger Begriff

Hier jetzt die Liste der Begriffe:

* Ableiten

Ableiten ist der Vorgang, aus einer Klasse eine andere, ähnliche zu bilden. Die abgeleitete Klasse erbt von der bereits vorhandenen Basisklasse die wesentlichen Eigenschaften (außer dem Namen); diese kann man dann in der abgeleiteten Klasse ändern der ergänzen.

Siehe Grundsätzliche Änderungen gegenüber C.

* Allokieren

Mit Allokieren bezeichnet man allgemein das Anfordern einer Resource des Betriebssystems zur Laufzeit eines Programms.

Meist ist damit das Allokieren von Speicher gemeint, der dann vom Betriebssystem aus einem meist heap genannten Speicherbereich zur Verfügung gestellt wird.

Andere allokierbare Resourcen könnten Plattenplatz, Semaphoren, Rechenzeit auf einem Prozessor, oder ähnliche Dinge sein.

* and
(Schlüsselwort C++)
Mit dem Schlüsselwort and hat man eine alternative Schreibweise für den logischen UND-Operator &&.

Folgende Zeilen sind also gleichwertig:

   if( (i<5) && (j>10) ) // ...
   if( (i<5) and (j>10) ) // ...

Siehe [KW:0 ist false].

* and_eq
(Schlüsselwort C++)
and_eq ist eine alternative Schreibweise für &=, also für das bitweise AND mit gleichzeitiger Zuweisung.

Siehe [KW:0 ist false].

* ANSI

ANSI ist ein US-amerikanisches Normungsinstitut; etwa vergleichbar mit dem deutschen DIN.

* asm
(Schlüsselwort C++)
Mit dem Schlüsselwort asm kann man in einem nachfolgenden Klammerpaar einen String angeben, der als Assemblercode verstanden werden soll. Der genaue Inhalt eines solchen Strings ist systemabhängig.

Für portablen Code ist asm zwangsläufig ungeeignet.

* auto
(Schlüsselwort C und C++)
Mit auto kann man ausdrücken, daß eine lokale nichtstatische Variable eine sogenannte automatische Variable sein soll. Das ist sie aber sowieso, und für alle anderen Deklarationen ist auto nicht zulässig. Damit ist dieses Schlüsselwort schlicht und ergreifend überflüssig.

Siehe [KW:0 ist false].

* bitand
(Schlüsselwort C++)
Mit dem Schlüsselwort bitand hat man eine alternative Schreibweise für den bitweisen UND-Operator &.

Folgende Zeilen sind also gleichwertig:

   i = j & 0x000f;
   i = j bitand 0x000f;

Siehe [KW:0 ist false].

* bitor
(Schlüsselwort C++)
Mit dem Schlüsselwort bitor hat man eine alternative Schreibweise für den bitweisen ODER-Operator |.

Folgende Zeilen sind also gleichwertig:

   i = j | 0x000f;
   i = j bitor 0x000f;

Siehe [KW:0 ist false].

* bool
(Schlüsselwort C++)
bool ist der logische Datentyp; siehe Logischer Datentyp bool.

* break
(Schlüsselwort C und C++)
Mit break kann man einerseits jede Schleife (for, while, do...while) schlagartig beenden, und andererseits in einem switch am Ende eines case-Zweiges vermeiden, daß der Programmfluß in das nächste case läuft. Siehe [KW:0 ist false].

* case
(Schlüsselwort C und C++)
Mit case werden die einzelnen Zweige einer switch-Anweisung markiert.

Siehe [KW:0 ist false].

* cast

Mit cast bezeichnet man den Vorgang, ein Objekt eines Datentyps entweder in ein Objekt eines anderen Typs zu überführen, oder das vorhandene Objekt nur als ein Objekt des anderen Typs zu interpretieren.

Der cast kann explizit vom Programmierer erzwungen werden, oder implizit vom Compiler durchgeführt werden.

Siehe [KW:0 ist false], Explizite Typumwandlung, und run time type information (RTTI).

* catch
(Schlüsselwort C++)
Mit catch kann man den Typ einer zu fangenden Ausnahme und den gegebenenfalls auszuführenden Code angeben; siehe Ausnahmebehandlung.

* char
(Schlüsselwort C und C++)
char ist ein Basisdatentyp, der eine kleine ganze Zahl beziehungsweise ein einfaches Zeichen aufnehmen kann.

Siehe [KW:0 ist false].

* class
(Schlüsselwort C++)
Mit class kann man einen eigenen Datentyp, eine Klasse, vereinbaren. Siehe Klassen.

* class factory

Mißverständliche Bezeichnung für eine Methode, die ein Objekt ihrer Klasse erzeugt und zurückliefert; siehe Virtuelle Konstruktoren.

* Compiler

Ein Compiler ist ein Programm, welches ein Programm von einer Programmiersprache (beispielsweise C++) in eine andere (meist eine konkrete Maschinensprache) übersetzt.

* compl
(Schlüsselwort C++)
Als alternativen Namen für den Operator ~ kann man compl verwenden.

Siehe [KW:0 ist false].

* const
(Schlüsselwort C und C++)
Mit const kann man angeben, daß ein Objekt nicht vom Programm aus geändert werden darf. Beim Definieren oder Deklarieren von Variablen oder Parametern bezieht sich diese Eigenschaft auf eben dieses Objekt; siehe [KW:0 ist false].

Wenn const hinter der Parameterliste einer Methodendeklaration steht, dann ist damit gemeint, daß die Methode ihr zugrundeliegendes Objekt (also *this) nicht verändert; siehe const-Methoden.

* const_cast
(Schlüsselwort C++)
Mit const_cast kann man von einem Ausdruck das const-Attribut entfernen; siehe run time type information (RTTI).

* continue
(Schlüsselwort C und C++)
Mit continue kann man den Rumpf einer Schleife (for, while, do...while) beenden, und mit der Reinitialisierung (bei der for-Schleife) beziehungsweise der Bedingung (bei den anderen Schleifen) weitermachen.

Siehe [KW:0 ist false].

* default
(Schlüsselwort C und C++)
Damit definiert man in einer switch-Anweisung den Programmteil, der ausgeführt werden soll wenn keiner der angegebenen case-Zweige zutrifft.

Siehe [KW:0 ist false].

* delete
(Schlüsselwort C++)
Mit delete kann man den Speicher freigeben, den man mit new Datentyp allokiert hat.

Mit delete[] kann man den Speicher freigeben, den man mit new Datentyp[Anzahl] allokiert hat.

Siehe Freier Speicher new und delete.

* do
(Schlüsselwort C und C++)
Mit do beginnt man eine (nicht abweisende) do...while-Schleife.

Siehe [KW:0 ist false].

* double
(Schlüsselwort C und C++)
double ist ein Basisdatentyp zur Darstellung einer (doppelt genauen) Gleitkommazahl.

Siehe [KW:0 ist false].

* dynamic_cast
(Schlüsselwort C++)
siehe run time type information (RTTI).

* else
(Schlüsselwort C und C++)
Damit beginnt die Alternative einer if-Anweisung, also der Programmteil, der ausgeführt werden soll wenn die Bedingung im if nicht zutrifft.

Siehe [KW:0 ist false].

* enum
(Schlüsselwort C und C++)
Mit enum kann man Aufzählungen ausdrücken; Ergebnis ist zum einen eine Menge von ganzzahligen Konstanten, und gegebenenfalls ein neuer Datentyp, dem diese Konstanten angehören.

Siehe [KW:0 ist false], sowie Einfachere Schreibweise bei enum, struct und union.

* explicit
(Schlüsselwort C++)
Mit einem explicit vor einem Konstruktor kann man einen Aufruf mit anderen als den angegebenen Parametern (und einer impliziten Konversion durch den Compiler) verhindern.

Siehe explicit.

* export
(Schlüsselwort C++)
Wenn es nicht praktikabel ist, den Code einer template-Funktion in jedem Modul zur Verfügung zu haben, in dem eine der generischen Funktionen verwendet wird, dann kann man mit export weiterkommen. Siehe Templatefunktion für mehrere Module.

* extern
(Schlüsselwort C und C++)
Damit kann man eine Konstante, Variable, oder Funktion deklarieren, und zudem angeben, daß die Definition möglicherweise in einem anderen Modul enthalten ist.

Siehe [KW:0 ist false].

Weiterhin kann man mit extern "C" Deklarationen erzeugen, die nicht nach C++-Konventionen behandelt werden, sondern nach C-Konventionen. Siehe extern ¨C¨.

* false
(Schlüsselwort C++)
false ist eine der beiden Konstanten vom Typ bool; siehe Logischer Datentyp bool.

* float
(Schlüsselwort C und C++)
float ist ein Basisdatentyp zur Darstellung einer (einfach genauen) Gleitkommazahl.

Siehe [KW:0 ist false].

* for
(Schlüsselwort C und C++)
Mit for kann man sehr flexible Zählschleifen bauen.

Siehe [KW:0 ist false].

* fortran

fortran wird von manchen Implementationen verwendet, um eine Funktion zu deklarieren, wenn das Bilden der Parameterliste und der Aufruf der Funktion nach Fortran-Konvention erfolgen soll.

Dadurch kann man Fortran-Unterprogramme und -Funktionen aus C heraus aufrufen, und umgekehrt.

fortran ist kein offizielles Schlüsselwort, wird aber von vielen Systemen verwendet.

* Free Software Foundation

Die Free Software Foundation (FSF) ist eine Stiftung in den USA, die freie Software fördert.

* friend
(Schlüsselwort C++)
Mit friend kann man in einer Klasse eine andere Klasse oder Funktion so deklarieren, daß letztere auf alle Elemente (egal ob private, protected oder public) der aktuellen Klasse zugreifen darf.

Siehe friend: Freunde haben freien Zutritt.

* goto
(Schlüsselwort C und C++)
Mit goto kann man einen lokalen Sprung innerhalb einer Funktion auslösen (man kann es aber auch bleiben lassen).

Siehe [KW:0 ist false].

* FSF

FSF ist die Abkürzung für Free Software Foundation.

* GNU

Ein ehrgeiziges (aber trotzdem von Erfolg gekröntes) Projekt der FSF ist GNU. Darin wird ein komplettes unixähnliches Betriebssystem entwickelt, das technisch mindestens so gut sein soll wie kommerzielle Unixvarianten, aber vollständig aus frei verfügbarer Software besteht.

Ein heute üblicherweise ,,Linux`` genanntes System besteht tatsächlich aus einem Kernel, dem eigentlichen Linux, sowie aus einer Unmenge Software aus dem GNU-Projekt. Deshalb sollte das komplette System eigentlich nicht ,,Linux`` heißen, sondern ,,GNU/Linux``.

Von der FSF wird aber auch die Entwicklung eines eigenen Kernels betrieben (das ,,Hurt``-Projekt). Ob damit allerdings gegen das weit verbreitete Linux anzukommen ist, erscheint fraglich.

Aus dem GNU-Projekt entstammt auch die Gnu compiler collection (gcc), in der etliche Compiler enthalten sind, unter anderem für C, C++, Fortran, Pascal, Ada, Java, und andere.

Weiterhin ist in die Rubrik GNU auch der EMACS einzuordnen, der möglicherweise einzig wahre Editor.

* if
(Schlüsselwort C und C++)
Mit if baut man Fallunterscheidungen.

Siehe [KW:0 ist false].

* inline
(Schlüsselwort C++)
Als inline deklarierte Funktionen können vom Compiler komplett überall dort eingesetzt werden, wo der Programmierer einen Aufruf der Funktion schreibt. Dadurch kann sich die Ausführungszeit unter Umständen verbessern.

Siehe inline-Funktionen.

* int
(Schlüsselwort C und C++)
Der Basisdatentyp int stellt eine ganze Zahl dar.

Siehe [KW:0 ist false].

* ISO

ISO ist eine internationale Institution zur Erstellung von Normen.

Die ANSI-Normen zu C und C++ wurden als ISO-Normen übernommen.

* Konstante

Als Konstante bezeichnet man Objekte im Speicher, deren Wert sich während des Programmlaufs nicht ändern kann (beispielsweise die Stringkonstante "abc" oder die ganzzahlige Konstante 25), aber auch Variablen, die man mit dem Schlüsselwort const vor einer versehentlichen Manipulation schützt. Letzteres ist keine wirkliche Konstante, weil sich ihr Wert theoretisch ändern kann, ohne daß der Compiler dafür direkt Code erzeugt hat; siehe dazu das Schlüsselwort volatile.

* Linker

Ein Linker setzt mehrere Teilprogramme, die in Maschinensprache vorliegen (also Ausgaben eines Compilers) zu einem lauffähigen Programm zusammen.

* long
(Schlüsselwort C und C++)
Als Abart von int kann man der Datentyp long möglicherweise einen größeren Zahlenbereich darstellen.

Siehe [KW:0 ist false].

* Maschinensprache

Maschinensprache ist die Programmiersprache, die ein bestimmter Prozessor direkt verarbeiten kann.

* Methode

Eine ,,Methode`` ist eine Funktion, die einer Klasse zugeordnet ist, (member function) und die Daten der Klasse (,,Elemente``) bearbeiten kann.

* Microsoft

Microsoft ist ein Softwarehersteller aus den USA.

* mutable
(Schlüsselwort C++)
Mit mutable kann man Klassenelemente deklarieren, die von const-Methoden (im Gegensatz zu ,,normalen``, nicht mutable deklarierten Elementen) verändert werden dürfen.

Siehe const-Methoden.

* namespace
(Schlüsselwort C++)
Mit namespace kann man den Gültigkeitsbereich von Namen steuern; siehe Namensbereiche (namespace).

* new
(Schlüsselwort C++)
Mit new kann man Speicher allokieren, und gegebenenfalls dafür Konstruktoren aufrufen.

Siehe Freier Speicher new und delete.

* not
(Schlüsselwort C++)
Anstelle des !-Operators (logische Verneinung) kann man auch not schreiben.

Siehe [KW:0 ist false].

* not_eq
(Schlüsselwort C++)
not_eq ist eine alternative Schreibweise für !=, also für den Vergleich auf Ungleichheit.

Siehe [KW:0 ist false].

* objektorientiert

Als ,,objektorientiert`` bezeichnet man eine Vorgehensweise zum Erstellen von Programmen (und -systemen), bei der die reale Welt abgebildet wird, indem die realen Objekte in Form von Klassen beschrieben werden, und zur Laufzeit eines Programms dann von solchen Klassen Instanzen gebildet werden (die dann jeweils einem Objekt der realen Welt entsprechen).

Eine Klasse beschreibt nicht nur die zum Abbilden nötigen Daten, sondern an gleicher Stelle auch die darauf anwendbaren Funktionen (,,Methoden``).

* operator
(Schlüsselwort C++)
Das Schlüsselwort operator ist Bestandteil aller Funktionsnamen, die Operatoren überladen.

Siehe Überladen von Operatoren.

* or
(Schlüsselwort C++)
or ist eine alternative Schreibweise für den Operator || (logisches ODER).

Siehe [KW:0 ist false].

* or_eq
(Schlüsselwort C++)
or_eq ist eine alternative Schreibweise für |=, also für das bitweise ODER mit gleichzeitiger Zuweisung.

Siehe [KW:0 ist false].

* pascal

pascal wird von manchen Implementationen verwendet, um eine Funktion zu deklarieren, wenn das Bilden der Parameterliste und der Aufruf der Funktion nach Pascal-Konvention erfolgen soll.

Dadurch kann man Pascal-Unterprogramme und -Funktionen aus C heraus aufrufen, und umgekehrt.

pascal ist kein offizielles Schlüsselwort, wird aber von vielen Systemen verwendet.

* Polymorphie

Mit Polymorphie bezeichnet man die Fähigkeit bestimmter Dinge, sich je nach den gegebenen Umständen unterschiedlich darstellen zu können.

Das können überladene Funktionen sein, die je nach ihren aktuellen Parametern unterschiedlichen Programmcode ausführen (Überladen von Funktionen), oder Objekte im Speicher, die über virtuelle Funktionen ein unterschiedliches Verhalten zeigen (Virtuelle Methoden).

Siehe auch Grundsätzliche Änderungen gegenüber C.

* Präprozessor

Der Präprozessor ist ein Programm, das vor dem eigentlichen Übersetzen durch den C- oder C++-Compiler den Quelltext manipulieren kann.

Siehe [KW:0 ist false].

* private
(Schlüsselwort C++)
Mit private kann man in einer Klasse einen Abschnitt einleiten, in dem alle dort definierten oder deklarierten Elemente nur den Methoden der Klasse zugänglich sind; siehe Allgemeines zu Klassen.

Weiterhin kann man durch eine private-Ableitung einer Basisklasse erreichen, daß alle Elemente der Basisklasse durch die abgeleitete Klasse betrachtet unzugänglich sind (also als private erscheinen); siehe public, protected oder private ableiten.

* protected
(Schlüsselwort C++)
Mit protected kann man in einer Klasse einen Abschnitt einleiten, in dem alle dort definierten oder deklarierten Elemente nur den Methoden der Klasse sowie den Methoden abgeleiteter Klassen zugänglich sind; siehe Allgemeines zu Klassen.

Weiterhin kann man durch eine protected-Ableitung einer Basisklasse erreichen, daß alle public-Elemente der Basisklasse durch die abgeleitete Klasse betrachtet protected erscheinen; siehe public, protected oder private ableiten.

* public
(Schlüsselwort C++)
Mit public kann man in einer Klasse einen Abschnitt einleiten, in dem alle dort definierten oder deklarierten Elemente frei zugänglich sind; siehe Allgemeines zu Klassen.

Weiterhin kann man durch eine public-Ableitung einer Basisklasse erreichen, daß alle Elemente der Basisklasse durch die abgeleitete Klasse betrachtet genau so zugänglich sind, wie sie in der Basisklasse vereinbart wurden; siehe public, protected oder private ableiten.

* register
(Schlüsselwort C und C++)
Wenn man eine lokale Variable als register deklariert (zusätzlich zu ihrem Typ), dann gibt man dem Compiler damit einen Hinweis, daß die Programmausführung schneller werden könnte, wenn er diese Variable in einem Register hält.

Bei modernen, gut optimierenden Compilern ist das aber nicht mehr hilfreich.

Siehe [KW:0 ist false].

* reinterpret_cast
(Schlüsselwort C++)
Eine explizite Anweisung an den Compiler, den Speicher, den ein Objekt belegt, als einen anderen Typ zu betrachten.

Siehe run time type information (RTTI).

* return
(Schlüsselwort C und C++)
Das ist ein Rücksprung aus einer Funktion (Unterprogramm).

Siehe [KW:0 ist false].

* short
(Schlüsselwort C und C++)
Ganzzahliger Datentyp, der mit einer gewissen Wahrscheinlichkeit weniger Platz für jedes Element benötigt als int.

Siehe [KW:0 ist false].

* signed
(Schlüsselwort C und C++)
Mit signed modifiziert man einen ganzzahligen Datentyp derart, daß er ausdrücklich vorzeichenbehaftet ist.

Siehe [KW:0 ist false].

* sizeof
(Schlüsselwort C und C++)
Ein Operator, der die Größe eines Ausdrucks oder eines Typs im Speicher liefert.

Siehe [KW:0 ist false].

* static
(Schlüsselwort C und C++)
static ist ein Modifizierer für Deklarationen.

Je nach Verwendung hat static verschiedene Bedeutungen:

* static_cast
(Schlüsselwort C++)
führt eine Typumwandlung durch, ähnlich wie der übliche cast (Typ)Ausdruck.

Siehe run time type information (RTTI).

* Stroustrup

Bjarne Stroustrup ist der Erfinder von C++.

* struct
(Schlüsselwort C und C++)
Mit struct kann man neue Datentypen aus bereits vorhandenen Typen bilden.

Siehe [KW:0 ist false].

* switch
(Schlüsselwort C und C++)
Auswahlentscheidung anhand eines ganzzahligen (integralen) Ausdrucks.

Siehe [KW:0 ist false].

* template
(Schlüsselwort C++)
Mithilfe von template lassen sich Schablonen für generische Funktionen (siehe Funktionsschablonen (template-Funktionen)) und Klassen (siehe Klassenschablonen (template-Klassen)) definieren.

* this
(Schlüsselwort C++)
Über den Zeiger this findet eine (nichtstatische) Methode das Objekt, über das sie aufgerufen wurde.

Siehe Der Zeiger this.

* throw
(Schlüsselwort C++)
Mit throw wirft man eine Ausnahme; siehe Ausnahmebehandlung.

* true
(Schlüsselwort C++)
true ist eine der beiden Konstanten vom Typ bool; siehe Logischer Datentyp bool.

* try
(Schlüsselwort C++)
try leitet einen Programmteil ein, in dem eine Ausnahme erwartet wird, auf die mit catch reagiert werden soll; siehe Ausnahmebehandlung.

* typedef
(Schlüsselwort C und C++)
typedef vereinbart einen neuen Namen für einen Datentypen.

Siehe [KW:0 ist false].

* typeid
(Schlüsselwort C++)
Mit dem Operator typeid kann man zur Laufzeit den Typ eines Objekts in Erfahrung bringen; siehe run time type information (RTTI)rtti.

* typename
(Schlüsselwort C++)
Mit typename sagt man, daß ein nachfolgender Bezeichner ein Typ sein muß; siehe Klassenschablonen (template-Klassen).

* union
(Schlüsselwort C und C++)
Mit einer union kann man ein und dieselbe Speicherstelle als verschiedene Datentypen ansprechen.

Siehe [KW:0 ist false], sowie Einfachere Schreibweise bei enum, struct und union und Anonyme union.

* unsigned
(Schlüsselwort C und C++)
Mit unsigned modifiziert man einen ganzzahligen Datentyp derart, daß er ausdrücklich nicht vorzeichenbehaftet ist (mithin nur nichtnegative Werte annehmen kann).

Siehe [KW:0 ist false].

* using
(Schlüsselwort C++)
Zum einfacheren Zugriff auf Namen, die in einem namespace deklariert wurden, kann man using benutzen; siehe Namensbereiche (namespace).

* Vererbung

Mit Vererbung bezeichnet man den Vorgang, daß beim Ableiten einer Klasse von einer anderen (Basisklasse) Eigenschaften übernommen werden; hauptsächlich die bereits in der Basisklasse definierten Elemente, Methoden, sowie die zugehörigen Zugriffsrechte.

Siehe Grundsätzliche Änderungen gegenüber C.

* virtual
(Schlüsselwort C++)
Durch virtual kann man den Compiler darauf hinweisen, daß eine Methode in einer abgeleiteten Klasse möglicherweise überschrieben wird; siehe Virtuelle Methoden.

Zudem kann man im Falle von Mehrfachvererbung unterdrücken, daß Elemente einer mehrfach indirekt beerbten Basisklasse in der abgeleiteten Klasse mehrfach auftreten.

* Virtueller Konstruktor

Bezeichnung für eine Methode, die ein Objekt ihrer Klasse erzeugt und zurückliefert; siehe Virtuelle Konstruktoren

* void
(Schlüsselwort C und C++)
Als Rückgabetyp von Funktionen angegeben, sagt void, daß die Funktion nichts zurückgibt. Siehe [KW:0 ist false].

In einer Parameterliste drückt man mit void aus, daß die Funktion keine Parameter erwartet. Siehe [KW:0 ist false] und Leere Parameterlisten.

Weiterhin ist der Datentyp void* ein Zeiger auf irgendetwas im Speicher. Siehe [KW:0 ist false].

Schließlich kann man mit void auch das Ergebnis eines Ausdrucks explizit verwerfen; das wird aber kaum genutzt, weil man das Ergebnis ja ohnehin nicht verwenden muß (außer, um in einem ?:-Ausdruck, der nichts liefern soll, die beiden Teilausdrücke formal typgleich zu machen).

* volatile
(Schlüsselwort C und C++)
Bei einem als volatile deklarierten Objekt rechnet der Compiler damit, daß sich der Wert ändern kann, ohne daß der vom Compiler generierte Code darauf Einfluß hat (beispielsweise durch asynchron auftretende Signale oder parallel laufende threads).

Dadurch darf ein Compiler keine Optimierungen durchführen, die sich auf einen unveränderlichen Wert des Objekts verlassen.

Siehe [KW:0 ist false].

* wchar_t
(Schlüsselwort C++)
In einem Element vom Typ wchar_t kann man ein Zeichen speichern; im Gegensatz zu einem normalen char lassen sich aber mehr als die gewohnten 256 Zeichen darstellen.

* while
(Schlüsselwort C und C++)
Eine abweisende Schleife wird mit while gebaut.

Siehe [KW:0 ist false].

* xor
(Schlüsselwort C++)
Mit dem Schlüsselwort xor hat man eine alternative Schreibweise für den bitweisen Exklusiv-ODER-Operator ^.

Folgende Zeilen sind also gleichwertig:

   i = j ^ 0x000f;
   i = j xor 0x000f;

Siehe [KW:0 ist false].

* xor_eq
(Schlüsselwort C++)
xor_eq ist eine alternative Schreibweise für ^=, also für das bitweise Exklusiv-ODER mit gleichzeitiger Zuweisung.

Siehe [KW:0 ist false].

AnyWare@Wachtler.de