Der Datentyp Bool

Datentyp Bool

Ein Bool (oder auch Boolean) steht für einen Wahrheitswert, der entweder true also wahr oder false also unwahr sein kann. Es ist ein sehr häufig verwendeter Datentyp, für den es viele Anwendungsfälle gibt. Namensgeber ist George Bool, ein englischer Mathematiker des 19. Jahrhunderts.

Wahr oder Unwahr

Eine boolesche Variable kann also nur einen von zwei Werten haben: Wahr oder Unwahr. In manchen Programmiersprachen werden diese Werte auch durch 0 und 1 repräsentiert, achte aber trotzdem immer darauf, boolesche Werte nicht mit numerischen Werten zu vermischen. Nachfolgend siehst du ein Beispiel einer einfachen booleschen Variable, der ein Wert aus einer Vergleichsoperation zugewiesen wird. Beachte, dass der Vergleich zwar zwischen numerischen Werten durchgeführt wird, das Ergebnis des Vergleichs aber ein bool ist.

    std::string text("This is a sample text");

    // is this a long string?
    bool longString = text.size() < 10;

    if(longString)
    {
        Log("The sample string is long");
    }
    else
    {
        Log("The sample string is short")
    }

Die Variable longString sagt also aus, ob es sich bei dem String um einen langen oder einen kurzen String handelt. Einfach? Ja! Aber auch sehr nützlich.

Boolsche Ausdrücke ohne Variablen

Boolesche Ausdrücke müssen nicht unbedingt in einer Variable gespeichert sein, sie können auch direkt verwendet werden:

    // is this a long string?
    if(text.size() < 10)
    {
        Log("The sample string is long");
    }
    else
    {
        Log("The sample string is short")
    }

Der Vergleich der Textgröße mit 10 ist also direkt ein boolescher Ausdruck, der wahr oder falsch sein kann. Wenn solche Ausdrücke zu lange werden, sind sie sehr unübersichtlich. Besser ist es dann für die Übersicht wieder Variablen zu verwenden.

Logische Operatoren

Der Datentyp heißt deshalb bool, weil ihm die Boolesche Algebra zugrunde liegt. Die Boolesche Algebra ist eine mathematische Struktur, die gewisse logische Operationen zulässt:

    bool myBool;
    bool hisBool;
    
    // Negation - NOT (ergibt true wenn myBool false ist und umgekehrt)
    !myBool;
    
    // UND-Verknüpfung - AND (ergibt true, wenn beide Variablen true sind)
    myBool && hisBool;
    
    // ODER-Verknüpfung - OR (ergibt true, wenn eine der beiden Variablen true ist)
    myBool || hisBool;

Der boolesche Datentyp in Verbindung mit den logischen Operatoren bildet zusammen mit if-Anweisungen die Grundlage für Entscheidungen in einem Programm.

Do you speak English?

Programmieren zu lernen ist auch ohne Englischkenntnisse möglich.

Compiletime Fehler

Das Programmieren ist eine komplexe Tätigkeit, bei der es ganz normal ist, dass Fehler passieren.

C++ eignet sich gut für Programmieranfänger

Es gibt jede Menge Programmiersprachen. Viele davon sind sich ähnlich, manche sind sehr eigenartig.

Copyright © 2014 www.lerneprogrammieren.com