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

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

    +145

    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
    #include <cstdio>
    
    class A
    {
    public:
    	void sayHello()
    	{
    		printf("Hello!");
    	}
    };
    
    int main(int argc, char **argv)
    {
    	A *a = 0;
    	a->sayHello();
    	return 0;
    }

    Что выведет этот код?

    hdkeeper, 29 Мая 2015

    Комментарии (65)
  3. PHP / Говнокод #18225

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    // Когда лень удалять условие и рефакторить код в условии...
    if(1==1){
      // тут около 1000 строк кода...
    }

    littlefuntik, 22 Мая 2015

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

    +145

    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
    this.serializeParams = function(params) {                                                                 
            var serialize = [];                                                                                   
            var buildParameters = function (parameters) {                                                         
                var result = {};                                                                                  
                if(typeof parameters == "object") {                                                               
                    for(var param in parameters) {                                                                
                        if(!parameters.hasOwnProperty(param)) {                                                   
                            continue;                                                                             
                        }                                                                                         
                        result[param] = buildParameters(parameters[param]);                                       
                    }                                                                                             
                }                                                                                                 
                if(typeof parameters == "string") {                                                               
                    return parameters;                                                                            
                }                                                                                                 
                return result;                                                                                    
            };                                                                                                    
            console.log(buildParameters(params));                                                                 
            for (var param in params) {                                                                           
                if(!params.hasOwnProperty(param)) {                                                               
                    continue;                                                                                     
                }                                                                                                 
                buildParameters(params[param]);                                                                   
                serialize.push(param + '=' + params[param]);                                                      
            }                                                                                                     
            if (serialize.length === 0) {                                                                         
                return '';                                                                                        
            }                                                                                                     
            return (this.options.method === "GET" ? "?" : "") + serialize.join('&');                              
        };

    В голове выглядело все идеально а получилось что то типа
    for(var i = 0; i < 1e10; i++) { continue; } // бесполезная работа

    LarexSetch, 22 Мая 2015

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

    +145

    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
    function send_posit(a){
    					a='<'+a+'>';
    					$.ajax(
    						{url: 'handler.php',
    						data : { posit_this: a},
    						type : "POST", 
    						async: false, 
    						dataType: "html",
    						success: function(data){data_br=data;}
    						})
    				}
    				function reset_all(){$("#Sub_menu1").html('');$("#Sub_menu2").html('');$("#Sub_menu3").html('');$("#Sub_menu4").html('');$("#tovar").html('');}
    				function reset_sub_menu2(){$("#Sub_menu3").html('');$("#Sub_menu4").html('');$("tovar").html('');$("#tovar").html('');}
    				function reset_sub_menu3(){$("#Sub_menu4").html('');$("#tovar").html('');}
    				function reset_tovar(){$("#tovar").html('');}
    				function Katalog(p){
    				switch (p) 
    				{
    				case 0:	send_posit("cat01");$("#menu0").html(data_br);send_posit("cat011");$("#Sub_menu1").html(data_br);send_posit("cat012");$("#Sub_menu2").html(data_br);
    					send_posit("cat013");$("#Sub_menu3").html(data_br);send_posit("cat014");$("#Sub_menu4").html(data_br);break;
    				case 1:	send_posit("cat01");$("#menu0").html(data_br);reset_all();send_posit("cat1");$("#Sub_menu1").html(data_br);break;
    				case 2:send_posit("cat02");$("#menu0").html(data_br);reset_all();send_posit("cat2");$("#Sub_menu1").html(data_br);break;
    				case 3:send_posit("cat03");$("#menu0").html(data_br);reset_all();send_posit("cat3");$("#Sub_menu1").html(data_br);break;
    				case 4:send_posit("cat04");$("#menu0").html(data_br);reset_all();send_posit("cat4");$("#Sub_menu1").html(data_br);break;
    				case 11:send_posit("cat11");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 111:send_posit("cat111");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1111:send_posit("tov_kart_1111");$("#tovar").html(data_br);break; 
    				case 1112:send_posit("tov_kart_1112");$("#tovar").html(data_br);break; 
    				case 1113:send_posit("tov_kart_1113");$("#tovar").html(data_br);break; 
    				case 1114:send_posit("tov_kart_1114");$("#tovar").html(data_br);break; 
    				case 112:send_posit("cat112");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 113:send_posit("tov_kart_1131");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 1121:send_posit("tov_kart_1121");$("#tovar").html(data_br);break;
    				case 1122:send_posit("tov_kart_1122");$("#tovar").html(data_br);break;
    				case 1123:send_posit("tov_kart_1123");$("#tovar").html(data_br);break;
    				case 12:send_posit("cat12");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 121:send_posit("tov_kart_121");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 122:send_posit("tov_kart_122");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 123:send_posit("tov_kart_123");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 13:send_posit("cat13");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 131:send_posit("tov_kart_131");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 132:send_posit("tov_kart_132");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 133:send_posit("tov_kart_133");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 134:send_posit("tov_kart_134");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 14:send_posit("cat14");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 141:send_posit("cat141");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 142:send_posit("cat142");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 16:send_posit("cat16");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 161:send_posit("cat161");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 162:send_posit("cat162");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 163:send_posit("cat163");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1611:send_posit("tov_kart_1611");$("#tovar").html(data_br);break;
    				case 1612:send_posit("tov_kart_1612");$("#tovar").html(data_br);break;
    				case 1613:send_posit("tov_kart_1613");$("#tovar").html(data_br);break;
    				case 1614:send_posit("tov_kart_1614");$("#tovar").html(data_br);break;
    				case 1615:send_posit("tov_kart_1615");$("#tovar").html(data_br);break;
    				case 1621:send_posit("tov_kart_1621");$("#tovar").html(data_br);break;
    				case 1622:send_posit("tov_kart_1622");$("#tovar").html(data_br);break;
    				case 1623:send_posit("tov_kart_1623");$("#tovar").html(data_br);break;
    				case 1631:send_posit("tov_kart_1631");$("#tovar").html(data_br);break;
    				case 1632:send_posit("tov_kart_1632");$("#tovar").html(data_br);break;
    				case 1633:send_posit("tov_kart_1633");$("#tovar").html(data_br);break;
    				case 1634:send_posit("tov_kart_1634");$("#tovar").html(data_br);break;
    				case 1635:send_posit("tov_kart_1635");$("#tovar").html(data_br);break;
    				case 1636:send_posit("tov_kart_1636");$("#tovar").html(data_br);break;
    				case 1637:send_posit("tov_kart_1637");$("#tovar").html(data_br);break;
    				case 1638:send_posit("tov_kart_1638");$("#tovar").html(data_br);break;
    				case 1639:send_posit("tov_kart_1639");$("#tovar").html(data_br);break;
    				case 15:send_posit("cat15");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 151:send_posit("cat151");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 152:send_posit("cat152");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1511:send_posit("tov_kart_1511");$("#tovar").html(data_br);break;
    				case 1512:send_posit("tov_kart_1512");$("#tovar").html(data_br);break;
    				case 1513:send_posit("tov_kart_1513");$("#tovar").html(data_br);break;

    о майн гад.

    Каталог который можно написать на jquery в 15строк

    onotoliy, 18 Мая 2015

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (count($stores) == 1) {
        foreach ($stores as $store) {
            $storeId = $store->id;
        }
    }

    jbot, 18 Мая 2015

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

    +145

    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
    <?
    for ($i = 1; $i <= 100; $i++) {
        $t1 = $i / 3;
        $t2 = $i / 5;
        if (preg_match("/\./", "$t1") == false && preg_match("/\./", "$t2") == false) {
            echo "FizzBuzz<br>";
        } else {
            if (preg_match("/\./", "$t1") == false) {
                echo "Fizz<br>";
            } else {
                if (preg_match("/\./", "$t2") == false) {
                    echo "Buzz<br>";
                } else {
                    echo "$i<br>";
                }
            }
        }
    }
    ?>

    ZF...

    Yshk, 15 Мая 2015

    Комментарии (2)
  8. JavaScript / Говнокод #18168

    +145

    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
    function GetItemID() {
        var path = window.location.href;
        //alert(path);
        var itemID = "";
        var count = 0;
        for (i = 1; i < path.length; i++)
        {
            if (count != 12)
            {
                if ((path[i] == '0') || (path[i] == '1') || (path[i] == '2') || (path[i] == '3') || (path[i] == '4') || (path[i] == '5') || (path[i] == '6') || (path[i] == '7') || (path[i] == '8') || (path[i] == '9'))
                {
                    itemID += path[i];
                    count++;
                }
                else {
                    if (count != 12)
                    {
                        itemID = "";
                        count = 0;
                    }
                }
            }
        }
        return itemID;
    }

    На eBay определяет ID товара для кнопки купить в мерчантской(китайцы) странице ниже. O location.href.match(/\d{12}/) они наверное не знали.

    baldrs, 14 Мая 2015

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

    +145

    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
    var errorFirst = true;
    		var errorSec   = true;
    		
    		if(errFirstV!==false && errFirstN!==false){
    			errorFirst=true;
    		}
    		else if (errFirstV===false && errFirstN!==false) {
    			
    			errorFirst=false;
    			
    		}
    		else if (errFirstV===false && errFirstN===false) {
    			
    			errorFirst=false;
    			
    		}
    		else if (errFirstV!==false && errFirstN===false) {
    			
    			errorFirst=false;
    			
    		}
    		
    		
    		if(errFirstT!==false && errFirstE!==false){
    		
    			errorSec=true;
    		}
    		else if(errFirstT===false && errFirstE!==false){
    		
    			errorSec=false;
    		}
    		else if(errFirstT===false && errFirstE===false){
    		
    			errorSec=false;
    		}
    		else if(errFirstT!==false && errFirstE===false){
    		
    			errorSec=false;
    		}
    		
    		// check both lines
    		
    		if (errorFirst !==true && errorSec !== true) {
    			error=false;
    		}

    ЭТО шЭдэвр!!!!

    armengabriel, 12 Мая 2015

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    int main () {
      constexpr int a = f ();
      constexpr int b = f ();
    
      static_assert (a != b, "fail");
    }

    Можно ли это успешно скомпилировать?
    http://b.atch.se/posts/non-constant-constant-expressions/
    Можно, лал.

    LispGovno, 29 Апреля 2015

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

    +145

    1. 1
    2. 2
    if (in)
    	goto out;

    Найдено на просторах ядра (fsl_esai.c кому интересно). Не ГК само по себе но читается замечательно.

    lorc, 27 Апреля 2015

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