stdbool.h

Der Header stdbool.h enthält die Makros true und false. Unter C++ ist die Datei als cstdbool einzubinden.

true und false

Bis zur Version C99 gab es keine Namen für die beiden Wahrheitswerte. Stattdessen wurde einfach 0 als falsch und alles andere als wahr angenommen. Schließlich wurden ihnen aber (gleich wie in C++) die Namen true und false zugewiesen. Dabei steht true für 1 und false für 0. Die Verwendung der beiden Makros ist selbsterklärend:

#include <stdio.h>
#include <stdbool.h>
 
int main()
{
  bool a = true;
  bool b = false;
 
  if( a )
  {
    if( b )
      printf( "'a' and 'b' are both true\n" );
    else
      printf( "'a' is true and 'b' is false\n" );
  }
  else
  {
    if( !b )
      printf( "'a' and 'b' are both false\n" );
    else
      printf( "'a' is false and 'b' is true\n" );
  }
 
  return 0;
}

Ausgabe:

'a' is true and 'b' is false



Diskussionsthread