Да, это делает оператор & & будет короткое замыкание оценки как только он находит ложное условие, и || будет делать то же самое, когда найдет истину.
& & и || операторы выполняют операции условного-И и условного-ИЛИ для двух булевых выражений. Эти операторы демонстрируют поведение «короткого замыкания», что означает, что второй операнд оценивается только в случае необходимости. source
В случае, если Вы хотели бы заставить программу, чтобы оценить все условия, вы должны использовать побитовое логические операторы: & и |
Например:
if ((c5) & (c4) & (c3) & (c2)){
//execute operation
}
Предыдущий код будет оценивать все условия, даже если ложный найден (не короткое замыкание).
Это очень легко проверить себя ... –