1. Лучший говнокод

    В номинации:
    За время:
  2. Си / Говнокод #8124

    +146

    1. 1
    *((Point *)((Node *) result->data)->data) = *p;

    Вот это Point *, которая в void * хранится, в списке, в котором другой список хранится, в доме, который построил Джек.

    byss, 08 Октября 2011

    Комментарии (69)
  3. Java / Говнокод #7287

    +77

    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
    public static <T> T createInstance(String className, Object ... ctorParams)
    	{
    		Class<T> type;
    		try {
    			type = (Class <T>) Class.forName(className);
    		} 
    		catch (ClassNotFoundException e) { throw new RuntimeException(e); }
    		
    		Class <?> [] paramTypes = new Class [ctorParams.length];
    		for(int i = 0; i < ctorParams.length; i ++)
    			paramTypes[i] = (Class <?>) ctorParams[i].getClass();
    		
    		Constructor<T> ctor;
    		try {
    			ctor = type.getConstructor(paramTypes);
    		} 
    		catch (SecurityException e)    { throw new RuntimeException(e); }
    		catch (NoSuchMethodException e){ throw new RuntimeException(e); }
    		
    		T instance;
    		try {
    			instance = ctor.newInstance(ctorParams);
    		} 
    		catch (IllegalArgumentException e)  { throw new RuntimeException(e); }
    		catch (InstantiationException e)    { throw new RuntimeException(e); }
    		catch (IllegalAccessException e)    { throw new RuntimeException(e); }
    		catch (InvocationTargetException e) { throw new RuntimeException(e); }
    		
    		return instance;
    	}

    Тут само Java вынуждает говнокодить. О святая простота!

    dveyarangi, 19 Июля 2011

    Комментарии (69)
  4. C++ / Говнокод #7029

    +159

    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
    void AClass::registerApplication( int pCaller )
    {
      if ( mRegistry == NULL )
      {
        // we will be the first application in registry
        mRegistry = createRegistryElement( pCaller );
      }
      else
      {
        // there are other applications already registered
        // first create registry entry
        Application *lApplication = NULL;
        lApplication = createRegistryElement( pCaller );
    
        // put entry in front
        lApplication->mNext = mRegistry;
        mRegistry = lApplication;
      }
    }

    добавляем новый элемент в односвязный список. mRegister голова списка. кто не видит говна - идти читать матчасть.

    Dummy00001, 22 Июня 2011

    Комментарии (69)
  5. Pascal / Говнокод #6473

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    For i := 1 to Length(Val)-1 do
      Begin
        If (Ord(Val[i]) >= 48) and (Ord(Val[i]) <= 57) and
        (not ((Ord(Val[i+1]) >= 48) and (Ord(Val[i+1]) <= 57))) then Result := true;
      End;

    ОТЦЕНИТИ КОД!!!1

    Govnocoder#0xFF, 25 Апреля 2011

    Комментарии (69)
  6. PHP / Говнокод #4564

    +147

    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
    Мой скромный говнокод для любителей фильтрации и xss
    При записи в базу 
    $msg = stripslashes(htmlspecialchars(trim($_POST['msg']))); // Очищаем от мусора
    Вывод из базы 
     
    function post($text, $html=true, $nl2br = true, $smiles = true, $bbcode = true) 
    {
     if ($html)
     {
     $text=html_entity_decode($text, ENT_QUOTES, 'UTF-8'); // в базе в htmllenties обратная перекодировка
     }
     if($smiles)
     { 
     $text = smiles($text);
     }
     if($bbcode)
     {
     $text = bbcode($text);
     }              
     if($nl2br)
     {
     $text = nl2br($text);
     } 
     
     return $text;
    }

    Недавно нашел в своем скрипте блога )

    Danis92, 09 Ноября 2010

    Комментарии (69)
  7. PHP / Говнокод #3583

    +157

    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
    if($_POST["gaap_month"])
    {
            $d_f = mktime(0,0,0,1,1,$_POST['f_year']);
            $w_start = intval(date("W", $d_f));
            $w_day = (intval(date("w", $d_f)) == 0) ? 6 : intval(date("w", $d_f)) - 1;
            $d_f = ($w_start == 1) ? $d_f - $w_day*24*60*60 : $d_f + (7-$w_day)*24*60*60;
            $d_f += (4*($_POST['gaap_month']-1) + intval(($_POST['gaap_month']-1)/3)) * 7*24*60*60;
            $d_t = ($_POST['gaap_month'] % 3 == 0) ? $d_f + 5*7*24*60*60 : $d_f + 4*7*24*60*60;
            $_POST["df"] = date("d.m.Y", $d_f);
            $_POST["dt"] = date("d.m.Y", $d_t);
    }
    
    $date_from = mktime(0,0,0,substr($_POST["df"],3,2),substr($_POST["df"],0,2),substr($_POST["df"],6,4));
    $date_to = mktime(23,59,59,substr($_POST["dt"],3,2),substr($_POST["dt"],0,2),substr($_POST["dt"],6,4));
    
      // if time period more than 20 days
    if ($date_to-$date_from > 61*24*60*60)
            $_POST["df"] = date("d.m.Y", $date_to - 61*24*60*60);
    
    if ($_GET['office'] && ($USER->isAdmin() || in_array("15", $USER->GetUserGroupArray())))
            $_POST['t_office'] = $_GET['office'];

    вопрос - что употребляет автор ?

    atarix12, 28 Июня 2010

    Комментарии (69)
  8. C++ / Говнокод #2366

    +66.4

    1. 1
    2. 2
    3. 3
    4. 4
    int str_length(const char *str)
    {
    	return (int)strlen(str);
    }

    Опенсорс, если чо.

    Ambilight, 03 Января 2010

    Комментарии (69)
  9. JavaScript / Говнокод #27886

    −7

    1. 1
    2. 2
    3. 3
    let x = 0.1;
    let y = 0.2;
    let z = x + y

    чему равно?

    ASD_77, 21 Декабря 2021

    Комментарии (68)
  10. Куча / Говнокод #26457

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    И ВОТ ДОРОГИЕ РЕБЯТА МЫ ПРОДОЛЖАЕМ РАЗБИРАТЬСЯ В БРИТАНСКОМ МЕЖДУНАРОДНОМ МОРСКОМ ПРАВЕ — СОГЛАСНО КОТОРОГО ВСЕ ЖИТЕЛИ ПЛАНЕТЫ И КОНКРЕТНО РУСИ 
    ЯВЛЯЮТСЯ БЕСПРАВНЫМИ И ИХ СТАТУС ПРИРАВНЕН К ЖИВОТНЫМ (ГОЯМ)… 
    А НА ЮРИДИЧЕСКОМ ЯЗЫКЕ ЭТО ЗНАЧИТ — ЧТО С ВАМИ МОГУТ ПОСТУПАТЬ КАК С ДИКИМИ ЖИВОТНЫМИ НА ОХОТЕ 
    И ЧЬЕЙ ТО ВЕЩЬЮ — ТАК ЖЕ КАК К ПРИМЕРУ КАБАНЫ, ЛОСИ, ЗАЙЦЫ И ПРОЧИЕ ЛЮДИ В ЛЕСУ И НА КАКОЙ ТО ТЕРРИТОРИИ — ПРИНАДЛЕЖАТ ИМЕННО ВЛАДЕЛЬЦУ ЛЕСА 
    ПО УМОЛЧАНИЮ СОГЛАСНА ДАННОЙ ЮРИСПРУДЕНЦИИ — А ВСЕ ЖИВОТНЫЕ НЕ ИМЕЮТ НИКАКИХ ПРАВ — И ТАК ДО ТЕХ ПОР ПОКА НЕ ЗАЯВЯТ О ТОМ ЧТО ОНИ ЖИВЫЕ ЛЮДИ 
    И ЯВЛЯЮТСЯ СУВЕРЕНАМИ (НЕЗАВИСИМЫМИ ЛЮДЬМИ — НИ ОТ КОГО И НИ ОТ ЧЕГО)…
    
    НУ КАК???… ВСЁ ПОНЯТНО???…

    3.14159265, 28 Февраля 2020

    Комментарии (68)
  11. Си / Говнокод #25977

    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
    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
    /* --- PRINTF_BYTE_TO_BINARY macro's --- */
    #define PRINTF_BINARY_PATTERN_INT8 "%c%c%c%c%c%c%c%c"
    #define PRINTF_BYTE_TO_BINARY_INT8(i)    \
        (((i) & 0x80ll) ? '1' : '0'), \
        (((i) & 0x40ll) ? '1' : '0'), \
        (((i) & 0x20ll) ? '1' : '0'), \
        (((i) & 0x10ll) ? '1' : '0'), \
        (((i) & 0x08ll) ? '1' : '0'), \
        (((i) & 0x04ll) ? '1' : '0'), \
        (((i) & 0x02ll) ? '1' : '0'), \
        (((i) & 0x01ll) ? '1' : '0')
    
    #define PRINTF_BINARY_PATTERN_INT16 \
        PRINTF_BINARY_PATTERN_INT8              PRINTF_BINARY_PATTERN_INT8
    #define PRINTF_BYTE_TO_BINARY_INT16(i) \
        PRINTF_BYTE_TO_BINARY_INT8((i) >> 8),   PRINTF_BYTE_TO_BINARY_INT8(i)
    #define PRINTF_BINARY_PATTERN_INT32 \
        PRINTF_BINARY_PATTERN_INT16             PRINTF_BINARY_PATTERN_INT16
    #define PRINTF_BYTE_TO_BINARY_INT32(i) \
        PRINTF_BYTE_TO_BINARY_INT16((i) >> 16), PRINTF_BYTE_TO_BINARY_INT16(i)
    #define PRINTF_BINARY_PATTERN_INT64    \
        PRINTF_BINARY_PATTERN_INT32             PRINTF_BINARY_PATTERN_INT32
    #define PRINTF_BYTE_TO_BINARY_INT64(i) \
        PRINTF_BYTE_TO_BINARY_INT32((i) >> 32), PRINTF_BYTE_TO_BINARY_INT32(i)
    /* --- end macros --- */
    
    #include <stdio.h>
    int main() {
        long long int flag = 1648646756487983144ll;
        printf("My Flag "
               PRINTF_BINARY_PATTERN_INT64 "\n",
               PRINTF_BYTE_TO_BINARY_INT64(flag));
        return 0;
    }

    govnokod3r, 18 Октября 2019

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