1. Список говнокодов пользователя void_main

    Всего: 3

  2. C++ / Говнокод #22894

    −13

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    void Int(int v) {
        ...
    }
    
    void Uint(int v) {
        ...
    }

    Я только что пострадал от гнилого сишного наследия и копипаста. В Uint передают unsigned, а он взял и молча скастился в отрицательный int.

    void_main, 03 Мая 2017

    Комментарии (20)
  3. Pascal / Говнокод #20873

    −40

    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
    const
    Utf2WinTable : array [0..65, 0..1] of string = (
       (#208#144,#192), (#208#145,#193), (#208#146,#194),
       (#208#147,#195), (#208#148,#196), (#208#149,#197),
       (#208#129,#168), (#208#150,#198), (#208#151,#199),
       (#208#152,#200), (#208#153,#201), (#208#154,#202),
       (#208#155,#203), (#208#156,#204), (#208#157,#205),
       (#208#158,#206), (#208#159,#207), (#208#160,#208),
       (#208#161,#209), (#208#162,#210), (#208#163,#211),
       (#208#164,#212), (#208#165,#213), (#208#166,#214),
       (#208#167,#215), (#208#168,#216), (#208#169,#217),
       (#208#170,#218), (#208#171,#219), (#208#172,#220),
       (#208#173,#221), (#208#174,#222), (#208#175,#223),
       (#208#176,#224), (#208#177,#225), (#208#178,#226),
       (#208#179,#227), (#208#180,#228), (#208#181,#229),
       (#209#145,#184), (#208#182,#230), (#208#183,#231),
       (#208#184,#232), (#208#185,#233), (#208#186,#234),
       (#208#187,#235), (#208#188,#236), (#208#189,#237),
       (#208#190,#238), (#208#191,#239), (#209#128,#240),
       (#209#129,#241), (#209#130,#242), (#209#131,#243),
       (#209#132,#244), (#209#133,#245), (#209#134,#246),
       (#209#135,#247), (#209#136,#248), (#209#137,#249),
       (#209#138,#250), (#209#139,#251), (#209#140,#252),
       (#209#141,#253), (#209#142,#254), (#209#143,#255) );
    
    function Utf8ToWin(s : string) : string;
     var i : integer;
       res  :string;
     begin
       res:=s;
       for I := 0 to 65 do
         if pos(Utf2WinTable[i,0],res)>0
           then res := StringReplace(res, Utf2WinTable[i,0], Utf2WinTable[i,1], [rfReplaceAll]);
       Result:=res;
     end;

    Эта лажа исправляет кодировку. Работает, но ужасно медленно.

    void_main, 20 Августа 2016

    Комментарии (4)
  4. Pascal / Говнокод #20818

    −19

    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
    try
            for i:=acoms.Count -1 downto 0 do
            begin
              if terminated then exit;
              comment:=tcomments(acoms.Objects[i]);
              try
              if ((fpidars.IndexOf(comment.CommentAutor) <> -1) or (CheckForSpam(comment.CommentText))) and (comment.AgainstCount>-5) then
                FcommNums.Add(comment.CommentNo);
              finally
                acoms.Objects[i].Free; // самое ужасное то, что я до сих пор не знаю, правильно ли это. FastMM молчит.
                acoms.Delete(i);
              end;
            end;

    FcommNums.Add(comment.CommentNo);


    По идее, должна создаться неявная копия строки. Однако, если сделать так

    finally
    comment.free;
    end;


    прога падает с Access Violation. Я знаю, что структуры кешируются, но, мб, объекты тоже?

    void_main, 16 Августа 2016

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