Си диез / Говнокод #16123 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
public bool EqualsToZero(int a){
 try {
  var b=100/a;
  return false;
 }
 catch{
  return true;
 }
}

Why not?

Запостил: alexCoder2007 alexCoder2007, (Updated )

Комментарии (12) RSS

  • А сначала я не обратил внимания на то, что аргумент - целое; с флоатом было бы эпичней.
    Ответить
    • FYI, clang сделал так (-O2 -fomit-frame-pointer):
      0000000000000000 <equals_to_zero>:
         0:   85 ff                   test   edi,edi
         2:   0f 95 c0                setne  al
         5:   c3                      ret
      Ответить
      • Само собой, трюк-то классический. Нет никакого резона сравнивать с константой.
        Ответить
  • шарпик теперь асм генерит вместо байт-кода сразу?
    Ответить
  • К сожалению, подобное я часто встречаю даже в Enterprise-коде, распространяемом за несмешные деньги.
    Ответить
    • > даже в Enterprise-коде
      Хе-хе-хе. Я, конечно, могу ошибаться, но в энтерпрайзе поди 90% подобного кода 😉
      Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8