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

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

    +1

    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <inttypes.h>
    #include <string.h>
    #include <stddef.h>
    
    #define INITARR(arr,...)                                                                                      \
    do                                                                                                            \
    {                                                                                                             \
      typedef struct {typeof(*arr) __tmp_arr[sizeof( (typeof(*arr)[]){__VA_ARGS__} ) / sizeof(*arr)];} __tmp_str; \
      *((__tmp_str *)arr) = (__tmp_str){{__VA_ARGS__}};                                                           \
    } while(0)
    
    
    
    int main(void)
    {
      uint8_t *test;
      test = malloc (sizeof (uint8_t[10]));
      INITARR(test,1,2,3,4,5,6,7,8,9,10);  
      for (size_t i = 0; i < 10; i++)
      {
        printf("%" PRIu8 ", ", test[i]);
      }
      return 0;
    }

    Для удобной инициализации массивов в хипе

    j123123, 23 Июля 2017

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

    +1

    1. 1
    2. 2
    NSString* string = [NSString stringWithFormat:@"%li", (long)number];
    NSInteger strCount = [string length] - [[string stringByReplacingOccurrencesOfString:@"1" withString:@""] length];

    Считаем количество единичек в числе.

    Взято отсюда: https://david-smith.org/blog/2017/07/07/a-favorite-hack/

    gumbert, 21 Июля 2017

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

    +1

    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>
    
    int main()
    {
    	int num=10;
    	for(;;)
    	{
    		double num=15;
    		printf("%g", num);
    		for(;;)
    		{
    			char num = 'A'+10;
    			printf("%c\n", num);
    			for(;;)
    			{
    				float num = 4.686;
    				printf("%5.3f\n", num);
    				break;
    			}
    			break;
    		}
    		break;
        }
    }

    Говно, а точнее понос

    ProgRamistYshka, 20 Июля 2017

    Комментарии (1)
  5. ActionScript / Говнокод #23197

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    set-executionpolicy unrestricted
    
    set /p name
    set fullname=%name%.mp4
    set /p time = "set time"
    set /p path = "set path"
    
    
    adb shell screenrecord --bit-rate 8000000 --time-limit $time $fullname &> $null
    echo "Recording finished. Pulling $fullname into current folder:"
    adb pull $fullname $path /С/ # $fullname
    adb shell rm $fullname

    storvus, 20 Июля 2017

    Комментарии (1)
  6. JavaScript / Говнокод #23195

    +1

    1. 1
    2. 2
    3. 3
    if ($('.nav>ul>li').hasClass('selected')) {
        $('.selected').addClass('active');
    }

    Кусок кода из меню

    Stud, 19 Июля 2017

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

    +1

    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
    /* 
    ================== 
    CL_ScreenshotGetName
    ================== 
    */  
    void CL_ScreenshotGetName( int lastnum, char *filename )
    {
    	int	a, b, c, d;
    
    	if( lastnum < 0 || lastnum > 9999 )
    	{
    		// bound
    		Q_sprintf( filename, "scrshots/%s/!error.bmp", clgame.mapname );
    		return;
    	}
    
    	a = lastnum / 1000;
    	lastnum -= a * 1000;
    	b = lastnum / 100;
    	lastnum -= b * 100;
    	c = lastnum / 10;
    	lastnum -= c * 10;
    	d = lastnum;
    
    	Q_sprintf( filename, "scrshots/%s_shot%i%i%i%i.bmp", clgame.mapname, a, b, c, d );
    }

    один вопрос: НАХУЯ???

    mittorn, 18 Июля 2017

    Комментарии (1)
  8. PHP / Говнокод #23175

    +1

    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
    if (!empty($tickets)) {
        if (count($tickets)) {
    
            $c_start = strtotime($convetion_details['start']);
            $c_end   = strtotime($convetion_details['end']);
    
            $i = 0;
    
            while ($c_start <= $c_end) {
                if (is_int($i / 4) && $i > 0) $convetion_days_html .= '</tr><tr>';
                $convetion_days_html .= '<td>' . date('d.m', $c_start) . ' ' . __t($days_of_week[date('w', $c_start)]) . ' &nbsp;&nbsp;&nbsp;&nbsp;<img src="' . str_replace('https', 'http', TEMPLATE_WWWPATH) . '/images/checkbox.png"/></td>';
                $c_start             = strtotime('+1 day', $c_start);
                $i++;
            }
    //...

    код из легаси 2007 года от индусов

    seyfer, 11 Июля 2017

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

    +1

    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
    <div class="checkbox removeSpan">
      <input id="all-standard-colors" name="all-standard-colors" type="checkbox"
                         data-bind="checked: $parent.selectAllStandardColors enable: $parent.isTabEnabled"/>
      <label for="all-standard-colors">All standard</label>
    </div>
    
    <style>
    div.checkbox > input + label {
        padding: 4px 0 4px 29px;
        background-image: url("../images/unchecked-checkbox.png");
        background-size: 21px;
        background-position: left center;
        background-repeat: no-repeat;
    }
    
    div.checkbox > input:checked + label {
        background-image: url("../images/checkbox-checked.png");
        background-size: 21px;
        background-position: left center;
        background-repeat: no-repeat;
    }
    </style>
    
    <script>
    $(document).ready(function() {
        setInterval(function(){
            $('.removeSpan span').remove();
        }, 2000);
    });
    </script>

    UI на knockout.js. Есть бага - пропадает галочка на чекбоксе. Выясняется что knockout для валидации вставляет после input тега невидимый span
    <span></span>
    Неизвестный товарищ фиксит это не вдаваясь в детали верстки и CSS селекторы - добавляет специальный класс, которым маркает все чекбоксы и поллер который убирает из них span каждые 2 секунды. Но про это никто не узнает. В течении полугода появляется еще десяток другой багов с отображением чекбоксов которые фиксят не вдаваясь в детали. И только потом замечают странный класс removeSpan и находят поллер в недрах domUtil.js, удаляют его и меняют один символ в стилях - вместо div.checkbox > input + label стало div.checkbox > input ~ label

    frenzykryger, 05 Июля 2017

    Комментарии (10)
  10. Ruby / Говнокод #23154

    +1

    1. 1
    2. 2
    3. 3
    def gsubn text
      text.gsub('\n','').gsub('\t','').gsub('\r','').gsub(/\"/,'').gsub('@@@@','. ').gsub("  "," ")
    end

    последний gsub меняет два пробела на один

    ll14m4n, 04 Июля 2017

    Комментарии (0)
  11. JavaScript / Говнокод #23111

    +1

    1. 1
    2. 2
    var x = '$$>1 ? eval(x.replace(/\\$\\$/g, $$-1)) + eval(x.replace(/\\$\\$/g, $$-2)) : 1';
    eval(x.replace(/\$\$/g, 5))

    Yo dawg, I heard you like evaluation. So I put evaluation in your evaluation so you could evaluate while you evaluate
    Фибоначчи, по мотивам http://govnokod.ru/20105#comment330201 хуйни

    j123123, 06 Июня 2017

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