function1
и да. function2
будет вызываться тогда и только тогда, когда предыдущим условием будет true
.
Это называется «короткое замыкание», и оно необходимо, например, для такого утверждения: if (p != 0 && *p == 'X')
Мы можем быть уверены, что p
никогда не разыменовывается, если оно равно нулю.