1. Список говнокодов пользователя Dummy00001

    Всего: 94

  2. Си / Говнокод #19766

    −45

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    printn(n,b) {
    	extern putchar;
    	auto a;
    
    	if(a=n/b) /* assignment, not test for equality */
    		printn(a, b); /* recursive */
    	putchar(n%b + '0');
    }

    в догонку к #19760. печатание числа `n` в base `b`. классический С образца 1972 года из UNIX v2. http://minnie.tuhs.org/cgi-bin/utree.pl?file=V2/lib/printf.c

    ЗЫ http://minnie.tuhs.org/cgi-bin/utree.pl?file=V2/lib - printf.c единственный С код в библиотеке был!

    ЗЗЫ это вам не энтерпрайз.

    Dummy00001, 06 Апреля 2016

    Комментарии (80)
  3. JavaScript / Говнокод #19678

    0

    1. 1
    [][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+[+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]])()

    JSF*ck - http://www.jsfuck.com/.

    ЗЫ http://blog.checkpoint.com/2016/02/02/ebay-platform-exposed-to-severe-vulnerability/ - санитация ввода в ж.

    Dummy00001, 22 Марта 2016

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

    0

    1. 1
    2. 2
    @ ln -s ${PWD}/${OUTPUT} ../${OUTPUT}; \
    make ${OUTPUT};

    пытался давеча мэйкфайлы окультуривать. в частности штапеля ln'ов (для девелопмента/отладки искусственное окружение создают) на что то более внятное поменять. только сегодня с утра наконец "увидел" почему мои изменения нифига не работали.

    Dummy00001, 26 Февраля 2016

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

    −94

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(Validate_Value((void *)pchStream, "st::r:[0\\-9]+:", &bValid) == ERR_NONE)
    {
        if(bValid) 
        {
            (void)sscanf(pchStream, "%hd", pusTextID);
        }

    из встроенщины медицинской. проверяем валидность числа регулярками. а вы думали такое только в пыхе...

    Dummy00001, 14 Декабря 2015

    Комментарии (14)
  6. bash / Говнокод #19114

    −52

    1. 1
    2. 2
    3. 3
    find "$@" -name "*.warn" |
    #       # \1 - path, \2 - warn file name, \3 - file name w/o ext; \\2 -> extension of the source file
    sed -re 's!^(.*/)(([^/.]+)[.][^/.]+)$!sed -re '\''s#^([^ :]+/)?\3.([a-z]+):#\1\3.\\2:#'\'' < \1\2!' | sh > $OUTFILE

    конвертер выхлопа компилера: конвертит относительные имена файлов в абсолютные, относительно рута проекта. я как то написал для Эклипсеров, у которых парсер выхлопа билда глючит и в ворнинги/ошибки кликать не дает. для этой проблемы решение в самом Эклипсе было позже найдено, и "скрипт" идет на свалку. думал может вас напоследок "порадует".

    Dummy00001, 01 Декабря 2015

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

    −97

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    int res;
    
    res = ioctl(...);
    
    /* Is value negative? */
    if(res & 0x8000){
        res = ((~res) & 0xffff) + 0x1;
        printf("%-32s: -%d mA\n", "Average Current", res);
    }
    else
        printf("%-32s: %d mA\n", "Average Current", res);

    железячник против signed short: шорты победили.

    Dummy00001, 01 Сентября 2015

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

    +64

    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
    XmlWriter<xhtml11::XHtmlDocument>(stream)
    <html
      <head
        <title
          <"Hello world!"
        >title
      >head
      <body
        <p
          <"Some nice paragraph text."
        >p
        <img(src="http://example.com/hello.jpg",alt="Hello")>img
      >body
    >html;

    кресты в квадрате. любителям темплейтов посвящается.

    http://www.vandenoever.info/blog/2015/07/05/literal-xml-in-c++.html

    Creating and processing XML feels awkward in most programming languages. With Blasien, a tiny C++11 header library, XML in C++ feels easy and natural. As an extra the XML that is written is mostly validated at compile time.

    Dummy00001, 06 Июля 2015

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

    +143

    1. 1
    fp_env = popen("env", "r");

    не ну я даже не знаю.

    Dummy00001, 27 Мая 2015

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

    +146

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if((pDir = opendir(pchPath)) != NULL)
    {
        strcpy(chBuffer, pchPath);
        strcat(chBuffer, "/");
        while((pTemp == NULL) && ((pDirent = readdir(pDir)) != NULL))
        {
            if(((pChar = strstr(pDirent->d_name, Info.pchFilePrefix)) == pDirent->d_name) &&
               ((pChar = strstr(pDirent->d_name, Info.pchFileExtension)) != NULL)  &&
               (pChar[strlen(Info.pchFileExtension)] == '\0'))
            {
                sprintf(strrchr(chBuffer, '/') + 1, "%s", pDirent->d_name);

    лаконичные программисты лаконично ходят по каталогам.

    Dummy00001, 21 Мая 2015

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

    +141

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    char    chByte15[3] = { pchCodeKey[0x15 * 2], pchCodeKey[0x15 * 2 + 1], 0 };
    char    chByte16[3] = { pchCodeKey[0x16 * 2], pchCodeKey[0x16 * 2 + 1], 0 };
    char    chByte18[3] = { pchCodeKey[0x18 * 2], pchCodeKey[0x18 * 2 + 1], 0 };
    
    unsigned char   uchByte15h;
    unsigned char   uchByte16h;
    unsigned char   uchByte18h;
    
    uchByte15h =  strtoul(chByte15, NULL, 16);
    uchByte16h =  strtoul(chByte16, NULL, 16);
    uchByte18h =  strtoul(chByte18, NULL, 16);

    все забыли про scanf()...

    Dummy00001, 13 Мая 2015

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