Логическое И в C++
Два ответа можно потребовать вместе. Логическое И верно только когда верны обе части. Если хотя бы одна часть ложна, связка тоже ложна.
Для такой связки служит оператор &&.
Сначала обе части истинны:
std::cout << (true && true) << "\n"; // выведет 1
Одна часть ложна:
bool flag1 = true;
bool flag2 = false;
std::cout << (flag1 && flag2) << "\n"; // выведет 0
Если слева от && уже ложь, правая часть
не считается. Это называют коротким замыканием.
Проверим на побочном эффекте ++: запишем
num, соберем выражение с ложью слева
и выведем num:
int num = 0;
bool flag = false && (++num > 0);
std::cout << num << "\n"; // выведет 0
Даны два логических значения:
bool flag1 = true;
bool flag2 = true;
Выведите результат связки И этих значений.
Даны два логических значения:
bool flag1 = false;
bool flag2 = true;
Выведите результат связки И этих значений.