Was ist der boolesche Datentyp C99 und wie wird er verwendet?
93
<stdbool.h>
Header einschließen
#include <stdbool.h>
int main(void){
bool b = false;
}
Makros true
und false
erweitert 1
und 0
jeweils.
Abschnitt 7.16
Boolescher Typ und Werte< stdbool.h >
- 1 Der Header definiert
<stdbool.h>
vier Makros.- 2 Das Makro
- bool wird zu _Bool erweitert.
- 3 Die verbleibenden drei Makros eignen sich zur Verwendung in # if-Vorverarbeitungsanweisungen. Sie sind
- true: wird auf die Ganzzahlkonstante 1 erweitert,
- false: wird auf die Ganzzahlkonstante 0 erweitert, und
- __bool_true_false_are_defined, das auf die Ganzzahlkonstante 1 erweitert wird.
- 4 Ungeachtet der Bestimmungen von 7.1.3 kann ein Programm die Makros bool, true und false unterdefinieren und möglicherweise neu definieren.
_Bool
(durch Zuweisung, Besetzung usw.) effektiv durch das Präfixieren des Ausdrucks mit erfolgt!!
.Bitte überprüfen Sie die Antwort hier in diesem verwandten Thread auf DaniWeb .
extrahiert und hier als bequeme Referenz zitiert: -
Verwendung neuer Schlüsselwörter in c99
quelle
_Bool
zusammen mit existiertbool
. Sehr hilfreich, um es zu verstehen.