Последний тест от ratwayer'a.
3)
Код delphi:
Кодvar
Value: Longint;
SW: Boolean;
SW := False;
Value := 4 + Cardinal(not SW) * 13; // Чему будет равно Value здесь?
SW := not SW;
Value := 4 + Cardinal(not SW) * 13; // А здесь?
Value := 4 + Cardinal(not SW) * 13; // Чему будет равно Value здесь?
4+ not false*13 = 4 + 1*13 = 17
SW := not SW;
Value := 4 + Cardinal(not SW) * 13; // А здесь?
Так как SW поменялось, Cardinal(not SW) теперь равно not true, тоесть 0 в итоге Value = 4 + 0*13 = 4.
Такой вот последний тест на вычет адресов, врятле чему то он научит, но всё же...
Комментариев нет:
Отправить комментарий