Skip to main content

Boolean literals

Syntax

1True
2False

Explanation

The Boolean literals are the keywords true and false. They are prvalues of type bool.

Notes

See Integral conversions for implicit conversions from bool to other types and boolean conversions for the implicit conversions from other types to bool.

Example

#include <iostream>

int main()
{
std::cout << std::boolalpha
<< true << '\n'
<< false << '\n'
<< std::noboolalpha
<< true << '\n'
<< false << '\n';
}
Result
true
false
1
0

References

  • C++23 standard (ISO/IEC 14882:2023):
    • 5.13.6 Boolean literals [lex.bool]
  • C++20 standard (ISO/IEC 14882:2020):
    • 5.13.6 Boolean literals [lex.bool]
  • C++17 standard (ISO/IEC 14882:2017):
    • 5.13.6 Boolean literals [lex.bool]
  • C++14 standard (ISO/IEC 14882:2014):
    • 2.13.6 Boolean literals [lex.bool]
  • C++11 standard (ISO/IEC 14882:2011):
    • 2.13.6 Boolean literals [lex.bool]
  • C++98 standard (ISO/IEC 14882:1998):
    • 2.13.5 Boolean literals [lex.bool]

Boolean literals

Syntax

1True
2False

Explanation

The Boolean literals are the keywords true and false. They are prvalues of type bool.

Notes

See Integral conversions for implicit conversions from bool to other types and boolean conversions for the implicit conversions from other types to bool.

Example

#include <iostream>

int main()
{
std::cout << std::boolalpha
<< true << '\n'
<< false << '\n'
<< std::noboolalpha
<< true << '\n'
<< false << '\n';
}
Result
true
false
1
0

References

  • C++23 standard (ISO/IEC 14882:2023):
    • 5.13.6 Boolean literals [lex.bool]
  • C++20 standard (ISO/IEC 14882:2020):
    • 5.13.6 Boolean literals [lex.bool]
  • C++17 standard (ISO/IEC 14882:2017):
    • 5.13.6 Boolean literals [lex.bool]
  • C++14 standard (ISO/IEC 14882:2014):
    • 2.13.6 Boolean literals [lex.bool]
  • C++11 standard (ISO/IEC 14882:2011):
    • 2.13.6 Boolean literals [lex.bool]
  • C++98 standard (ISO/IEC 14882:1998):
    • 2.13.5 Boolean literals [lex.bool]