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

    В номинации:
    За время:
  2. Куча / Говнокод #5288

    +136

    1. 1
    Все Лучший Сток Глупый поиск Наговнокодить! Отзывы

    Иногда говнокод находится перед самыми глазами :)
    Коли ставишь автоопределение кодировки - реформал кажет предложения на русском, а надпись отзывы и заголовок окна превращаются в Говнокод.СЂСѓ: РїРѕ колено РІ РєРѕРґРµ.
    Коли ставишь православный UTF-8 - с вижу все верно, а жмешь на отзывы и лицезреешь ��� ��������� 104 ����.
    Когда корабли бороздят просторы Вселенной - мы до сих пор не может устаканиться с кодировками.
    Может ну его, и как раньше кнопочки на сайте - Windows-1251, Mac, Koi-8 и Iso :)

    7ion, 15 Января 2011

    Комментарии (67)
  3. Си / Говнокод #4703

    +136

    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
    int CheckError( TStatusMessage* ctrl )
    {
    	if( !ctrl ) return 1;
    
    	if(ctrl->request>40) return 1;
    	if(ctrl->prm.radiation!=ctrl->prm.aradiation) return 1;
    	if(ctrl->prm.pulse!=ctrl->prm.apulse) return 1;
    	if(ctrl->prm.frequency!=ctrl->prm.afrequency)
    	{
    		if( (ctrl->prm.frequency&2) != (ctrl->prm.afrequency&2) )
    		{
    			return 1;		
    		}
    	} 
    	if(ctrl->prm.autotune==ctrl->prm.aautotune) return 1;
    	if(ctrl->prm.antenna==ctrl->prm.aantenna) return 1;
    	if(ctrl->prm.blanking!=ctrl->prm.ablanking) return 1;
    	if(ctrl->prm.vob!=ctrl->prm.avob) return 1;
    
    	return 0;
    }

    Проверка на наличие ошибки.

    absolut, 22 Ноября 2010

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

    +136

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <!--uSpoiler-->
    <div class="uSpoilerClosed" id="uSpoiler8deJ5b">
      <div class="uSpoilerButBl">
        <input type="button" class="uSpoilerButton" onclick="if($('#uSpoiler8deJ5b')[0]){if ($('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display=='none'){$('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display='';$('.uSpoilerButton',$('#uSpoiler8deJ5b')).val('Закрыть спойлер');$('#uSpoiler8deJ5b').attr('class','uSpoilerOpened');}else {$('.uSpoilerText',$('#uSpoiler8deJ5b'))[0].style.display='none';$('.uSpoilerButton',$('#uSpoiler8deJ5b')).val('Открыть спойлер');$('#uSpoiler8deJ5b').attr('class','uSpoilerClosed');}}" value="Открыть спойлер"/>
      </div>
      <div class="uSpoilerText" style="display:none;">
        <!--ust-->
          ... тут собственно текст спойлера ...
        <!--/ust-->
      </div>
    </div>
    <!--/uSpoiler-->

    В это превращается BB-код spoiler на укозовских сайтах. В оригинале это всё в одну строчку.

    telnet, 06 Ноября 2010

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

    +136

    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
    #include <stdio.h>
    
    #define declare_generic_func(x)\
    x add_##x(x x1,x x2) \
    {\
    	return x1+x2;\
    }
    #define generic_func(x,name) name##_##x
    
    declare_generic_func(int);
    declare_generic_func(double);
    
    int main()
    {
    	int a,b;
    	double ad,bd;
    	printf("Enter two integer numbers: ");
    	scanf("%d%d",&a,&b);
    	printf("Result: %d\n",generic_func(int,add)(a,b));
    	printf("Enter two real numbers: ");
    	scanf("%lf%lf",&ad,&bd);
    	printf("Result: %lf\n",generic_func(double,add)(ad,bd));
    	return 0;
    }

    Дженерики для труЪ сишников.

    frp, 14 Августа 2010

    Комментарии (7)
  6. Си / Говнокод #3751

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    recordSize=logicalRecordLength;
    BytesToRead=cnt*recordSize;
    records=cnt;
    while ( ((pos + BytesToRead)>dataSize)&&records )
    {
        BytesToRead = --records * recordSize;
    }

    Не думал, что у нас в коде встречу нечто явно похожее на пример №2 из статьи "Индусский код" на Луркморе.
    Ну и стоит добавить, что реально logicalRecordLength всегда равен 1.

    vovochka, 21 Июля 2010

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

    +136

    1. 1
    if (this.Visible || this.Invisible)

    обнаружено в коде коммерческой CMS

    mozg_raka, 25 Июня 2010

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

    +136

    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
    #if 0
    
    // memory allocator
    // Type: Best Fit with block sorting
    
    #else
    
    static char* last = (char*)KERNEL_HEAP_BEGIN;
    
    void* alloc( size_t size )
    {
    	void * mem = last;
    	last += size;
    	return mem;
    }
    
    void free( void* mem )
    {
    	(void)mem;
    }
    
    #endif

    Менеджер памяти.
    такую заглушку пришлось делать за пару ночей до сдачи диплома, так как не хватало времени на написание записки.
    зато самый быстрый алокатор. сложность О(1)...
    нужен был для выделения памяти для данных 2 потоков и 1 процесса... функция free нигде не использовалась...

    pushkoff, 17 Июня 2010

    Комментарии (38)
  9. Си / Говнокод #3429

    +136

    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
    #include <stdio.h>
    #include <string.h>
    int reg (char str[])
    {
    	int i;
    	int n=strlen(str);
    	for (i=0; i<n; i++)
    	if (str[i]<91) str[i]=str[i]+32;
    	return str[i];
    }
    int main ()
    {
    	char str[100]="OlololOlolOloLolOlooLololOlOllllOOOloLoloOlO";
    	int a=reg(str);
    	int i,n=strlen(str);
    	reg(str);
    	printf("%s",str);
    	return 0;
    }

    Программа собственно переводит в нижний регистр. Но как-то жестко написана. Очень сокрушаюсь, что нас еще не научили strwlr и strupr в институте. Оправдано такое написание или все же лучше пользоваться библиотечными функциями?

    ForEveR, 09 Июня 2010

    Комментарии (23)
  10. Си / Говнокод #3384

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(TouchRegist && !gIsCleanView && !gChangeZoom &&!gChangeBrightness)
    			if( TouchRegist && gChangeZoom)
    			{
    				...
    			}	
    			break;

    aljosha, 03 Июня 2010

    Комментарии (5)
  11. C# / Говнокод #3274

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    enum Bool
    {
        True,
        False,
        FileNotFound
    };

    Как оказывается Boolean может быть не только long, но и FileNotFound.

    Нашел зде©ь http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx

    HyperGeek, 19 Мая 2010

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