В языке C++ существует специальный тип для представления логических значений bool . Для величин этого типа существует только два возможных значения: true (истина) и false (ложь). Объявление логической переменной выглядит следующим образом:
bool condition; Соответственно, существуют только две логические константы – истина и ложь. Они обозначаются, соответственно, true и false .
Для типа bool определены стандартные логические операции: логическое И (&&), ИЛИ (||) и НЕ (!).
// истинно, если обе переменные, // cond1 и cond2, истинныcond1 && cond2// истинно, если хотя бы одна из переменных // истинна cond1 || cond2// результат противоположен значению cond1 !cond1 Как мы уже отмечали ранее, логические значения получаются в результате операций сравнения. Кроме того, в языке C++ принято следующее правило преобразования чисел в логические значения: ноль соответствует значению false , и любое отличное от нуля число преобразуется в значение true . Поэтому можно записать, например:
int k = 100;while (k) { // выполнить цикл 100 раз k--;}