1. C++ / Говнокод #17537

    +143

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    int n;
        cin >> n;
        int nums[n];
        for (int i = 0; i < n; i++)
            nums[i] = pow(i + 1, 2);

    Немного эзотерики.
    nums[4] = 24

    DesmondHume, 28 Января 2015

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

    +51

    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
    static bool convertCharToHexByte(char& ch)
    {
    	if (ch >= '0' && ch <= '9') {
    		ch -= '0';
    		return true;
    	}
    
    	if (ch >= 'a' && ch <= 'f') {
    		ch -= 'a';
    		ch += 0xA;
    		return true;
    	}
    
    	if (ch >= 'A' && ch <= 'F') {
    		ch -= 'A';
    		ch += 0xA;
    		return true;
    	}
    
    	return false;
    }

    alek0585, 27 Января 2015

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

    +54

    1. 1
    2. 2
    _defaultLog
    #include "stdafx.h"

    Это первые две строчки в C++ файле. Сам файл включен файл проекта. Ошибок компиляции нет. Сегодня удалю эту первую строку. В комментариях к комиту с этим изменением в свн написано: "Исправление дидлока".

    laMer007, 27 Января 2015

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

    +141

    1. 1
    strcat(strcpy(malloc(strlen(argv[0]) + sizeof(".track")), argv[0]), ".track")

    LispGovno, 24 Января 2015

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

    +50

    1. 1
    2. 2
    3. 3
    if ( !log.append(log_line) )
    
    log.append("Can't append to log");

    laMer007, 23 Января 2015

    Комментарии (13)
  6. C++ / Говнокод #17505

    +54

    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
    // We now have a locale string, but the global locale can be changed by
    // another thread. If we allow this thread's locale to be updated before we're done
    // with this string, it might be freed from under us.
    // Call versions of the wide-to-MB-char conversions that do not update the current thread's
    // locale.
    
    //...
    
    /*
                 * Note that we are using a risky trick here.  We are adding this
                 * locale to an existing threadlocinfo struct, and thus starting
                 * the locale's refcount with the same value as the whole struct.
                 * That means all code which modifies both threadlocinfo::refcount
                 * and threadlocinfo::lc_category[]::refcount in structs that are
                 * potentially shared across threads must make those modifications
                 * under _SETLOCALE_LOCK.  Otherwise, there's a race condition
                 * for some other thread modifying threadlocinfo::refcount after
                 * we load it but before we store it to refcount.
                 */

    MS VS 2013 CRT

    LispGovno, 23 Января 2015

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

    +56

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    bool XIsEmptyString( LPCTSTR str )
    {
    	CString s(str);
    	s.TrimLeft();
    	s.TrimRight();
    
    	return ( s.IsEmpty() || s == _T("") );
    }

    Кажется разработчика настиг приступ паранойи.

    Взято из библиотека XMLite

    German_1984, 23 Января 2015

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

    +56

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    `        enum SearchFlag
             {
                 IgnoreCase = 0x00000001,    ///< Case differences are ignored
    -            WholeWorlds = 0x00000002    ///< Only whole words are matched
    +            WholeWords = 0x00000002    ///< Only whole words are matched
             };

    очепятка + копи-паста = world domination.

    http://lists.freedesktop.org/archives/poppler/2015-January/011251.html

    http://cgit.freedesktop.org/poppler/poppler/commit/?id=78abf540057181b708c546aee421f81a1dd5 8331

    Dummy00001, 22 Января 2015

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

    +59

    1. 1
    2. 2
    3. 3
    if ( number % 10 == 0 ) {
        number %= 10;
    }

    мне кажется, или...

    artembegood, 21 Января 2015

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

    +76

    1. 1
    2. 2
    if ( !log.append(log_line) )
    	log.append("Can't append to log");

    Безумие, оно рядом.

    Anus, 20 Января 2015

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