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

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

    +6.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
    do {
    XLoop: 
        XNextEvent(dpy,&event);
        switch(event.type) {
          case ResizeRequest:
            if (event.xresizerequest.window!=win_main)
              goto XLoop;
    resize_main:
            xswa.event_mask&= ~ResizeRedirectMask;
            XChangeWindowAttributes(dpy,win_main,CWEventMask, &xswa);
            XSync(dpy,0); /* very important, otherwise we loop endlessly ! */
            XResizeWindow(dpy, win_main,event.xresizerequest.width,event.xresizerequest.height);
            XSync(dpy,0); /* very important, otherwise we loop endlessly ! */
            xswa.event_mask|= ResizeRedirectMask;
            XChangeWindowAttributes(dpy,win_main,CWEventMask, &xswa);
            resize=1;
            XSync(dpy,0); /* another one, just in case... */
            goto redisplay;
    
          case Expose:
    	if (event.xexpose.count|moving_button1|vmoving_button)
    	  goto XLoop;
    .....// и дальше такой же хрени типа нарисовать и goto XLoop; :)

    Однако под X11 пишут и так:

    guest, 13 Декабря 2008

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

    +16.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $temp69 = new dbQuery($sql69, $conn->connId) or die(mysql_error()); 
    $i=""; while($i<=5) { $res69=$temp69->getArray(); $i++; } 
    $sql69="select * from dj_config";
    $temp69= new dbQuery($sql69, $conn->connId) or die(mysql_error());
    $i="";
    while($i<=5){
    	$res69=$temp69->getArray();
    	$i++;
    }

    оригинал: http://blog.sjinks.org.ua/humour/76-programmers-russian-indian-chinese-canadian/

    guest, 13 Декабря 2008

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

    −11.9

    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
    void safecpy(char *str1, char *str2)
    {
    	strncpy(str1, str2, strlen(str1));
    	str1[strlen[str1]] = 0;
    }
    
    ...
    
    void safecpy(char *str1, char *str2)
    {
    	strncpy(str1, str2, sizeof(str1));
    	str1[sizeof(str1)] = 0;
    }

    Две примера функций \"безопасного\" копирования строк :-)

    guest, 12 Декабря 2008

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

    −58.5

    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
    //Вознашу хвалу тебе, о великий индуский бог программинга! Как ни странно, работает, но надо переписать на досуге.
    	       
    $city_xml = $CityArray->GetXml("CityList");
    	foreach($city_xml as $tmp_array){
    		if(!is_string($tmp_array) && $tmp_array[0] != "" && $tmp_array[0] != "Success" ){
    			foreach($tmp_array as $second_array){
    				$ixml = new xml();
    			    	$ixml->Insert($second_array);
    			    	foreach($ixml as $country_array){
    			    		if(!is_string($country_array) && $country_array[0] != "" && $country_array[0] != "Success" ){
    						foreach($country_array as $rxml){
    							if(!is_string($rxml)){
    								foreach($rxml as $axml){
    									if(!is_string($axml) && $axml[0] && $axml[0] != "Position"){
    										foreach($axml as $bxml){
    											foreach($bxml as $cxml){
    												if(!is_string($cxml) && is_array($cxml) && $cxml["Name"]){
    													$cities[] = $cxml;
    												}
    											}
    										}	
    									}
    								}
    							}
    						}
    				    	}
    				    }
    				}
    			}
    		}
    return $cities;

    Парсинг xml

    guest, 11 Декабря 2008

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

    −62.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if ( strchr ( $_POST["ship$i"], "+") || strchr($_POST["ship$i"], " ") || strchr($_POST["ship$i"], ",") || strchr($_POST["ship$i"], ".") || strchr($_POST["ship$i"], "-") || strchr($_POST["ship$i"], "_") || strchr($_POST["ship$i"], ";") || strchr($_POST["ship$i"], ":") ) { 
    message("You got owned by >>The_Revenge Anticheat Systems<<", "Anticheat");
    }
    if ( !strchr ( $_POST["ship$i"], "+") && !strchr($_POST["ship$i"], " ") && !strchr($_POST["ship$i"], ",") && !strchr($_POST["ship$i"], ".") && !strchr($_POST["ship$i"], "-") && !strchr($_POST["ship$i"], "_") && !strchr($_POST["ship$i"], ";") && !strchr($_POST["ship$i"], ":")) {
    // код
    }

    Немец предложил такое решение для проверки, что в строке ship$i именно положительное целое число и ни что иное.
    В другом месте попадается аналогичный момент, только там после каждого strchr для каждого спецсимвола идет 10 строк одного и того же кода с двумя запросами к БД и выдачей бана юзеру...
    Проект XNova (ogame-like)

    guest, 11 Декабря 2008

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

    −32.7

    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 void updateAmountValues(List<TransactionResultItem> transactionResultItems) {
            for (TransactionResultItem transaction : transactionResultItems) {
                Account account = getAccountById(transaction.getAccountId());
                if ((transaction.getMainTransaction()
                        && ! transaction.getTransactionTypeId().equals(4)
                        && ! transaction.getTransactionTypeId().equals(5)
                        && ! transaction.getTransactionTypeId().equals(6))
                        ||
                        (! transaction.getMainTransaction() &&
                                (transaction.getTransactionTypeId().equals(5) &&
                                        ((account.getAccountTypeId().equals(AccountType.INCOME_TYPE_ID) ||
                                                account.getAccountTypeId().equals(AccountType.OTHER_INCOME_TYPE_ID)) &&
                                                transaction.getAmount() > 0)
                                        || (transaction.getAccountId().equals(getSalesTaxPayableAccountId()) && transaction.getAmount() > 0)
                                        || ((account.getAccountTypeId().equals(AccountType.EXPENSE_TYPE_ID) ||
                                        account.getAccountTypeId().equals(AccountType.OTHER_EXPENSE_TYPE_ID)) && transaction.getAmount() < 0))
                                || (transaction.getTransactionTypeId().equals(1) &&
                                (account.getAccountTypeId().equals(AccountType.INCOME_TYPE_ID) ||
                                        account.getAccountTypeId().equals(AccountType.OTHER_INCOME_TYPE_ID)) &&
                                transaction.getAmount() < 0)
                                || (transaction.getTransactionTypeId().equals(2) &&
                                (account.getAccountTypeId().equals(AccountType.INCOME_TYPE_ID) ||
                                        account.getAccountTypeId().equals(AccountType.OTHER_INCOME_TYPE_ID)) &&
                                transaction.getAmount() > 0)
                        )) {
                    Double amount = transaction.getAmount();
                    transaction.setAmount(-amount);
                }
            }
        }

    Потрясающий по понятности код. Вызывался несколько раз в одном и том же методе.

    guest, 08 Декабря 2008

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

    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
    #include <iostream>
    
    union is_odd {
      long long int number;
      bool yes : sizeof(long long int);
    };
    
    int main() {
      std::boolalpha(std::cout);
      for (long long int i = -10; i < 10; ++i) {
        std::cout << i << " is odd? "
                  << is_odd{ .number = i }.yes
                  << "\n";
      }
    }

    DEMO:
    https://godbolt.org/z/5exc84eYK

    shittycode43, 15 Ноября 2024

    Комментарии (2)
  9. C++ / Говнокод #29012

    −2

    1. 1
    Удалите мой аккаунт

    Удалите мой аккаунт

    aleksusklim, 25 Октября 2024

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

    −2

    1. 1
    Удалите мой аккаунт

    Удалите мой аккаунт

    aleksusklim, 25 Октября 2024

    Комментарии (2)
  11. PHP / Говнокод #29005

    −2

    1. 1
    Удалите мой аккаунт

    Удалите мой аккаунт

    aleksusklim, 25 Октября 2024

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