k001
k001
:...

April 2032
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

k001 [userpic]
code wtf

Наткнулся сегодня на вот такой примерно код (почти индус-стайл!):

int x, y;
...

if (x) {
	if (!y ||
		x != y) {
			/* Do something */
	}
}

Много думал... Конечно же, if (x && x != y) делает то же самое, но проще.

Tags: ,
Comments

Это может иметь смысл, если планируется добавить что-нибудь перед последней скобкой.

Да, но тогда надо писать if (x) { if (x != y) { … } … }. Проверка (!y) всё равно лищняя.

Иногда такие вещи отражают логику задачи. ("Перед тем, как вскрывать телевизор, выдерни вилку. Перед тем, как лезть в строчник, убедись, что вилка выдернута.")

А иногда они отражают причудливый ход мысли того, кто это писал. :-)

Возможно, в будущем предполагалась возможность переопределения типов переменных в какую-нибудь противоречивую аксиоматику