1. C++ / Говнокод #11738

    +29

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    string input;
    string output;
     
    input = "C:\\bla.txt\\";          //"Bla.txt" is the file to copy
    output = "C:\\test\\";            //"Test" is the folder to copy to
     
    system("copy input.c_str() output.c_str()")

    http://cboard.cprogramming.com/cplusplus-programming/109047-help-copy-files-cplusplus.html

    an0nym, 10 Сентября 2012

    Комментарии (6)
  2. C# / Говнокод #11737

    +108

    1. 1
    2. 2
    3. 3
    4. 4
    if (!"12345".Contains(Model.quarter.ToString()))
    {
        m1 = m2 = m3 = "ошибка";
    }

    Немного восхитительного кода утром в понедельник.
    Тип данных Model.quarter Int32. Код из шаблона Razor

    CrazyMORF, 10 Сентября 2012

    Комментарии (7)
  3. C++ / Говнокод #11736

    +18

    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
    char* GetConnectionName(){return "";}
    //---
    char*  NetworkMgr::getErrorString(int id)
    {
        if(this->idValid(id))
    {
    return errors[id];
    }
    else
    {
    return "!!!unknown error!!!";
    }
    }

    Из тела одного большого класса, я конечно понимаю что строки хранятся не в стеке, но всеравно.

    Psionic, 10 Сентября 2012

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

    +118

    1. 1
    2. 2
    3. 3
    yoba = (flip (>>=) .) . ((filter .) . (flip . (((==) .) . flip mod)))
     
    main = print $ yoba 3 0 [КО КО КО]

    http://ideone.com/UGoYJ
    result: Internal error time: 0s memory: 0 kB signal: 0

    LispGovno, 09 Сентября 2012

    Комментарии (26)
  5. JavaScript / Говнокод #11734

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    if(h&&c-L<0)return y^=8,G--,L;
    
    // Toledo просрал оптимизацию на 2 байта ;)
    if(h&&c<L)return y^=8,G--,L;

    В общем-то этот пост не про говнокод, а про обещанную попытку привести в понятный вид шахматы,
    упомянутые в http://govnokod.ru/11704.

    https://github.com/bormand/nanochess
    Читаем, играем, обсираемкомментируем...

    bormand, 09 Сентября 2012

    Комментарии (32)
  6. C# / Говнокод #11733

    +123

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    static void Main() {
        Random random = new Random();
        ...
        int n1 = notations[random.Next(max)];
        int n2 = notations[random.Next(max)]; // дублирование кода!
        ....
        //исправлено на
        int n1 = notations[random.Next(max)];
        int n2 = n1;
    }

    vistefan, 09 Сентября 2012

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

    −91

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    if value == '' or value == None or value == False or value == 0:
        ...
    
    if count(data) <= 0:
        ...
    
    # так же он еще умеет рефакторить это
    if post_data is None:
        ...
    # вот в это
    if not post_data:
        ...

    Пара примеров, как у нас в проекте "кодит" товарищ из Индии

    larikov, 09 Сентября 2012

    Комментарии (28)
  8. Куча / Говнокод #11731

    +117

    1. 1
    main = print x where x = x + 0

    http://ideone.com/9caQE

    result: Runtime error     time: 0.01s    memory: 3536 kB     signal: -1 
    input: no
    output: no
    stderr:
    prog: <<loop>>

    LispGovno, 09 Сентября 2012

    Комментарии (8)
  9. Perl / Говнокод #11730

    −154

    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
    sub makeCleanString {
            my ($self, $uncleanString) = @_;
            $uncleanString = lc($uncleanString);
            my @allowedChars = ("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "@", ".", " ");     
                 
             my $cleanString = "";
                 
             # SPLIT THE uncleanString INTO AN ARRAY
             my @usernameAR = split(//, $uncleanString);
             my $usernameARcount = @usernameAR;
             my $run=0;
             for ($run=0;$run<$usernameARcount;$run++) {
                 if(grep $_ eq $usernameAR[$run], @allowedChars) {
                     $cleanString .= $usernameAR[$run];
                 }
             }
             return $cleanString;
        }

    Так же есть подобные методы только для букв и цифр

    LiteError, 09 Сентября 2012

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

    +59

    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
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    function Base($what, $field, $where, $id="", $special="") {
    //Соединились. Бльоооо
        $DBConnection=connect();
    
        //Чистим от лишнего входные данные
        $what=sanitize($what);
        $where=sanitize($where);
        if (isset($id)) {
            $id=sanitize($id);
        }
        if (isset($id)) {
            $special=sanitize($special);
        }
        if (isset($field)) {
            $field=sanitize($field);
        }
        //Бльоооооо
        if (!$field) {
            $field="*";
        }
    
        //Смотрим и выбираем что нам делать
        switch($what) {
            case 'sel': $query="SELECT ".$field;
                break; //Вытаскивать
            case 'del': $query="DELETE";
                break; //Удалять
        }
    
        //Формируем запрос, вставляем имя таблицы с которой мы работаем
        $query.=" FROM ".$where."s";
    
        //Проверяем есть ли условие выбора (т.е. всё мы вытаскиваем или нет
        if (isset($id) and $id!='') {
            //Если не указан параметр выбора, то автоматически заставляем выбирать по индетефикатору
            if (!isset($special) or $special=="") {
                $special=$where."_id";
            } else {
                $special=$where."_".$special;
            }
            //Формируем условие выбора
            $query.=" WHERE ".$special."='".$id."'";
        }
    
        //Нахрена вот это я ващеееее не понял, пацаныы (прим МТК)
        //трицератопс велел (прим Граф)
        if ($what=='del') {
            $query.=" LIMIT 1;";
        }
        //Исполняем запрос
        $resultId=@mysql_query($query, $DBConnection);
        //Если мы выбирали из базы
        if ($what=="sel") {
            //Но ничего не выбралось
            if(!$resultId) {
                //Возвращаем ЛОЖЬ и выходим
                return FALSE;
            }
            ;
            //Если всё ок - забиваем результат в массив
            $result=array();
            while(($currentRow=@mysql_fetch_assoc($resultId))!=false) {
                $result[]=$currentRow;
            }
            ;
    
            //И возвращаем испечённый результат
            return $result;
        }
        //Если же мы удаляли
        else {
            //Возвращаем результат.
            return $resultId;
        }
    
    }
    
    //Ебанутая функция №2
    function Base2($where, $ids="") {
        $DBConnection=connect();
        $where=sanitize($where);
        if (isset($ids)) {
            $ids=sanitize($ids);
        }
        $query="SELECT * FROM ".$where."s";
        if (isset($ids) and $ids!='') {
            $ids=explode(',', $ids);
            $query.=" WHERE ";
            $x=0;
            foreach($ids as $fieldName=>$fieldValue) {
                if ($x>0) {
                    $query.=" AND ";
                }
                //elseif ($x>1)
                //	{ $query.=","; }
                $param=explode("=", $fieldValue);
                if ($param[0]!='last_time') {
                    $query.=$where."_".$param[0]."='".$param[1]."'";
                }

    ActiveRecord? DataMapper? DAO? Ну может хотя бы PDO? )) Не, не слышали!
    Кстати, на функциях Base(), Base2() дело не закончилось,есть еще Base3(), BaseWrite(), BaseWrite2() . Я уже не стал выкладывать их код - и так понятно что там.

    WinnerWolf, 08 Сентября 2012

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