crypt of decay - March 4th, 2016 [entries|archive|friends|userinfo]
ketmar

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

March 4th, 2016

the joys of C [Mar. 4th, 2016|06:11 pm]
а вы знаете, что любой кусок кода, который содержит нижеследующее, может быть смело редуцирован в ничто?
unsigned char b;
...
всякая фигня
...
...(b<<24)

поясняю. «вдвигание» единицы в знаковый бит в цэ не определено. b по сишным правилам получает повышение до int. b может быть больше 0x7f. вуаля: undefined behavior. поэтому весь код до и после сдвига может быть смело выкинут компилятором на помойку, потому что его поведение тоже не определено. такое выкидывание не нарушает никаких правил и стандартов.

а мораль сей сказки простая: пойдите и поищите, нет ли у вас в коде такого сдвига без кастов в беззнаковое. есть? поздравляю, ваша программа — непортабельное дерьмо.

так что пишите на си, зайчики! видите, как легко на нём писать программы, которые потенциально можно оптимизировать в ноль инструкций? заодно можете спросить про этот код у очередного долбоёба, который начнёт вам рассказывать про «портабельность сишечки». потом смачно повозите его ебалом по его же говну и пиздюлями прогоните из своего дома.
Link3 meows|meow!

... [Mar. 4th, 2016|09:08 pm]
очень кушать хочется. пойду, посплю недельку-другую, помогает, говорят. авось похудею.
Link

navigation
[ viewing | March 4th, 2016 ]
[ go | Previous Day|Next Day ]