Например, если у меня есть оператор if следующим образом:
if(returnsFalse() && timeConsumingFunction()){
//do whatever
}
Будет ли программа выполнять трудоемкую функцию или она поймет, что if оценивается как false после того, как функция «returnsFalse()» вернет свое значение? Как это работает на разных языках? В основном интересует java и c.