Внимание сисадмины и пользователи, озабоченные бесплатностью ПО, очень внушительный список бесплатного софта по категориям обнаружил здесь: ссылка
В комментах к посту(представленном по ссылке) упоминаются также сайты:
- http://pricelessware.org/thelist/index.htm
- http://www.webattack.com/freeware/freeware.html
Особо хочу отметить сайт The OSSwin project: Open Source for Windows!. Можно сказать - то что доктор прописал..
Friday, January 18, 2008
Sunday, January 13, 2008
С-шные трюки от мыщъх'а
Как-то раз встретил очень интересный сайт http://www.insidepro.com. Но, интересным мне показался не сам сайт, а библиотека статей Криса Касперски в нем (смотреть здесь). Оформлено все очень удобочитаемо, чистый HTML, в общем пальчики оближешь..
Теперь по сабжу:
Статью обнаружил как-раз в этой библиотеке. Прочитав, был очень впечатлен. Некоторые вещи, конечно, мне были известны, но я подчерпнул много нового(правда даалеко не все переварил). Так что рекомендую прочитать всем поклонникам C/C++.
Выдержка:
Ссылка: С-шные трюки от мыщъх'а
Теперь по сабжу:
Статью обнаружил как-раз в этой библиотеке. Прочитав, был очень впечатлен. Некоторые вещи, конечно, мне были известны, но я подчерпнул много нового(правда даалеко не все переварил). Так что рекомендую прочитать всем поклонникам C/C++.
Выдержка:
Вопрос: сколько времени потребуется рядовому программисту, чтобы понять, что происходит с переменными x и y?
x ^= y ^= x ^=y;
Давайте разобьем это выражение на три: "x ^= y; y ^= x; x ^= y;", для наглядности записав их так:
1) x = x XOR y;
2) y = y XOR x;
3) x = x XOR y;
А это уже чистая математика получается! Повторное наложение исключающего ИЛИ независимо от порядка аргументов, как известно, дает исходный результат, но в строках 1) и 2) аргументы меняются местами, следовательно, после выполнения шага 2) в переменной y окажется x, а сам x будет содержать "смесь" (x XOR y), из которой на шаге 3) "изымается" прежний x и остается чистый y. Короче, происходит обмен значений двух переменных без привлечения третьей.
Красиво? Красиво! Но, увы, по скорости и объему машинного кода сильно проигрывает стандартному "tmp = x; x = y; y = tmp;", поэтому пользоваться данным хаком не рекомендуется.Ссылка: С-шные трюки от мыщъх'а
Subscribe to:
Posts (Atom)