Операції порівняння
Оператори >= <= > < можуть використовувати будь-які числові типи даних, включаючи булеві.
У мові C, якщо змінна містить 0, то її булевое значення еквівалентно БРЕХНЯ, і навпаки, будь-яке число трактується як ІСТИНА. Для кращого розуміння нижче наведено фрагмент коду:
if (bool_variable) printf(“True!n”); else printf(“False!n”)
В C відсутнє поняття логічного типу даних, замість нього використовуються числові типи, в основному integer. Тому в логічних операціях будь-який операнд числового типу, що має значення, не рівне нулю, інтерпретується як ІСТИНА, а результатом логічних операцій є цілі числа, один і нуль відповідно. В C++ був введений логічний тип даних, але скоріше для зручності роботи. Він ніяк не впливає на використання інших типів логічних виразах, як і в C.
Порядок виконання операторів логічних типів даних відбувається зліва направо. Наприклад, обчислення виразу
var x && var y && var z
зупиниться, як тільки виявиться перший операнд у значенні БРЕХНЯ, а обчислення
var x || var y || var z
буде виконуватися, поки компілятор не зустріне перше справжнє значення.