5.15 Boolescher Wert – <stdbool.h> 

Im C99-Standard wurde mit _Bool ein boolescher Wert eingeführt. Glücklicherweise existiert für den Typ _Bool in der Headerdatei <stdbool.h> das Makro bool, sodass Sie den Bezeichner bool wie in C++ verwenden können. Allerdings müssen Sie hierfür dann extra die Headerdatei <stdbool.h> inkludieren.
Boolesche Werte sind Elemente einer booleschen Algebra, die einen von zwei möglichen Werte annehmen kann. Dieses Wertepaar hängt von der Anwendung ab und lautet entweder wahr/falsch, true/false oder eben 1/0. In C/C++ kann hierfür das Wertepaar true (für wahr) und false (für falsch) verwendet werden, die beide in der Headerdatei <stdbool.h> mit der Konstante 1 und 0 definiert sind. Natürlich können Sie hierfür auch das Paar 1 und 0 als Dezimalwert verwenden:
#include <stdbool.h> // ... // Schalter auf wahr setzen _Bool b1 = 1; // Schalter auf unwahr setzen _Bool b2 = 0; // benötigt <stdbool.h> bool b3 = true; // wahr // benötigt <stdbool.h> bool b4 = false; // unwahr
Ob die Wahrheitswerte true oder false in <stdbool.h> überhaupt vorhanden sind, lässt sich mit dem Makro __bool_true_false_are_defined überprüfen. Gibt dieses Makro 1 zurück, stehen Ihnen true und false zur Verfügung:
if( __bool_true_false_are_defined ) print("true/false sind vorhanden\n");
Hinweis |
Um hier kein Durcheinander zu verursachen, muss noch erwähnt werden, dass der C99-Standard den Typ _Bool als echten Datentyp implementiert hat. Das Makro bool und die beiden Wertepaare true bzw. false können Sie nur verwenden, wenn Sie die Headerdatei <stdbool.h> inkludieren. |
Hinweis |
Da immer noch einige namhafte Compiler-Hersteller wie beispielsweise Microsoft, den C99-Standard nicht unterstützen, habe ich bei den Beispielen im Buch (in dieser Auflage) noch auf den Datentyp _Bool bzw. dessen Synonym bool verzichtet. Sinnvoll ist dieser Datentyp beispielsweise bei der Rückgabe von Funktionen oder bei Überprüfungen von logischen Ausdrücken. |
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.