Рубрики

C | Операторы | Вопрос 26

#include <stdio.h>

int main()

{

   int y = 0;

   int x = (~y == 1);

   printf("%d", x);

   return 0;

}

(А) 0
(Б) 1
(C) Болото отрицательное число
(D) Ошибка компилятора

Ответ: (А)
Пояснение: Важно отметить, что ~ это побитовый не оператор. Таким образом, значение ~ 0 будет равным 1 единице в двоичном представлении, что означает, что десятичное значение ~ 0 не равно 1. Следовательно, результатом оператора сравнения становится 0.
Тест на этот вопрос

Рекомендуемые посты:

C | Операторы | Вопрос 26

0.00 (0%) 0 votes