1. Си / Говнокод #6646

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    while ( strlen ( &ParseSMS[pos] ) != 0 )
    {
        Byte0 = HexToByte(&ParseSMS[pos]);
        pos += 2;
    
        pSMS->sms[txt_counter] = Byte0;
        txt_counter ++;
    }

    достались исходнички. Человек не знает, как работает strlen
    а буфер то на 140 байт !

    Запостил: megajohn, 13 Мая 2011

    Комментарии (26) RSS

    • ну и якорь ему в задницу :)
      Ответить
    • запостил на одном форуме, говорято что все нормально. Вот пошло же поколение программистов Висты

      в общем. кто не в курсе работы strlen даю подсказку:
      за первое выполние strlen сделает проверку 140 байт
      за второе - 138 байт
      за третье - 136 байт

      в итоге в массиве на 140 байт будет 4970 проверок этих самых байт !
      Ответить
      • Копейки.
        Ответить
        • Рубль берегут
          Ответить
          • Это была ирония. Но трудновато будет убедить «поколение Висты», что код, тормозящий аж на несколько микросекунд — это ужас-ужас. ;)
            Ответить
      • а причем тут виста?

        таки дело не в strlen, а в asciiz строках
        Ответить
        • При том, что это на PDP-11 глупость такого кода очевидна была бы сразу.
          Ответить
    • В Windows есть скрытая игра — трюки на мотоцикле. У неё нет названия, её нельзя найти ни в какой папке, но есть способ её запустить. Что для этого нужно?
      Открываем Пуск » Выполнить...
      Вводим в поле cmd и нажимаем OK.
      В появившемся окне вводим assoc.
      Пока будет выводиться информация, набираем «вслепую» format C:, нажимаем Enter, затем Y, затем снова Enter.
      Наслаждаемся игрой!
      Ответить
    • Подобное использование 'strlen' - довольно избитая и поднадоевшая говноплюшка. Я бы скорее обратил внимание на то, что произойдет, если длина исходной строки вдруг окажется нечетной (полагая, что это не было проверено заранее).
      Ответить
    • показать все, что скрытоvanished
      Ответить

    Добавить комментарий