1. Си / Говнокод #24383

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    void trampoline(void (*func)(void), bool flag)
    {
        if (flag)
            func();
        else
            trampoline(func, true);
    }
    
    int 
    main(int argc, char *argv[])
    {
        /*... */
        trampoline(set_aes_keys, false);
    }

    Зачем так? ЯННП.

    codemonkey, 14 Июня 2018

    Комментарии (80)
  2. Ruby / Говнокод #24381

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    def index
      categories = params[:category_ids].present? ?
        params[:category_ids].collect {|id| Category.find id } :
          Category.all
        respond_with(:api, categories)
    end

    когда не знаешь как на это реагировать

    AlexKlim, 13 Июня 2018

    Комментарии (4)
  3. Куча / Говнокод #24380

    −1

    1. 1
    2. 2
    Рак
    https://twitter.com/thelarkinn/status/1006746626617008128

    С этим миром явно что-то не так.

    roskomgovno, 13 Июня 2018

    Комментарии (211)
  4. PHP / Говнокод #24379

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    #include <stdio.h>
    
    int main()
    {
    
    <?php
        function genputs($s) {
            echo "\tputs(\"$s\");\n";
        }
        function f($i) {
            if ($i >= 5 && $i <= 20 || $i % 10 >= 5 || $i % 10 == 0)
                return "ок";
            elseif ($i % 10 == 1)
                return "ка";
            else
                return "ки";
        }
        $i = 99;
        while ($i >= 1) {
            $s = f($i);
            genputs("$i бутыл$s пива на стене");
            genputs("$i бутыл$s пива!");
            genputs("Возьми одну, пусти по кругу");
            if ($i-- > 1) {
                $s = f($i);
                genputs("$i бутыл$s пива на стене!");
            }
        }
        genputs("Нет бутылок пива на стене!");
    ?>
    
        return 0;
    }

    Когда хочется в Си такой же няшный препроцессор как в FASM'е...

    666_N33D135, 12 Июня 2018

    Комментарии (25)
  5. Си / Говнокод #24378

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    bool P(int *X, int k, int y, int N) // Поиск позиции для ферзя
    {
      int i = 0;
      while ((i<k) && (y != X[i]) && (abs(k - i) != abs(y - X[i]))) { i++; }
      if (i == k)
        return true;
      else if (i != k)
        return false;
      else
        return !true && !false;
    }

    Часть задачи о восьми ферзях. Обнаружена на Тостере.
    Обратите внимание на цикл («обнаружен бой — стоп»), и на аналог return (i==k).

    Mercury13, 12 Июня 2018

    Комментарии (23)
  6. Assembler / Говнокод #24375

    0

    1. 1
    2. 2
    add    bp, 4 ; 83C504
    lea    bp, [bp + 4] ; 8D6E04

    А они ещё говорят, что первого байта для всех КОПов не хватает, и ввели дополнительный.

    666_N33D135, 11 Июня 2018

    Комментарии (262)
  7. Куча / Говнокод #24373

    −2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    Ай-люли-люлю-люлёй!
    Как ты будешь жить со мной?
    Ведь я сын твоих бровей,
    Чернокнижник-брадобрей.
    
    Подходи скорее в рот,
    Да возьми коловорот,
    Просверли мне в пузе дырку
    И просунь туда пипирку.
    
    Ты продвинь её вперёд,
    И чуть-чуть наискосок.
    Там увидишь президента,
    А чуть выше - изолента.
    
    Намотайся вокруг ленты
    И спроси ты президента:
    
    «Почему в нашей деревни
    Поклоняются царевни,
    Что мужчинов в рот ибёт,
    А мужчинам не даёт?
    
    Так идёт из года в год -
    Нас царевна всех ибёт,
    А мы ей несём подарки,
    Что нашли на нашей свалке.
    
    А ещё у нас в лесу
    Нашли копчёну колбасу,
    Что на дериви живёт
    И плясать нас всех зовёт.
    
    Мы танцуем бутерброды -
    Это вздох последней морды.
    Нас засыпало углём,
    А мы пляшем и поём.
    
    И вот такой вопрос возник:
    Где бы взять такой тройник,
    Чтоб свой сунув туда член,
    Получить полипропилен?»

    666_N33D135, 10 Июня 2018

    Комментарии (7)
  8. Python / Говнокод #24367

    +1

    1. 1
    2. 2
    def __repr__(self) -> str:
            return f"<User{return ', inactive!' if not self.active else ''} #{self.id} ({self.username}/{self.email})>"

    Когда очень хочется использовать красивый f"{ormat}" для строки, но модель БД становится все сложнее...

    saber-nyan, 08 Июня 2018

    Комментарии (89)
  9. Куча / Говнокод #24366

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    -define(MCGA, group_leader(whereis(user), self())). %% Makes CT great again
    
    test_foo(_Config) ->
      ?MCGA,
      ...
    
    test_bar(_Config) ->
      ?MCGA,
      ...

    Известный в узких кругах компонент-тест фреймворк "common test" (aka ct) предназначен для интерпрайза. Поэтому в нём нельзя просто взять и вывести логи в консоль, все аутпуты улетают в модные html файлы, но ни у кого не было времени читать их. Снаут прошерстила кучу форумов, где эту проблему предлагали решать чуть ли не патчингом beam файлов. Но решение куда проще.

    CHayT, 08 Июня 2018

    Комментарии (2)
  10. PHP / Говнокод #24365

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public function isDeleted($isDeleted = null)
    {
        $result = $this->_isDeleted;
        if ($isDeleted !== null) {
            $this->_isDeleted = $isDeleted;
        }
        return $result;
    }

    magento,core

    gasay, 07 Июня 2018

    Комментарии (2)