четверг, 12 апреля 2012 г.

Хабр и ЛОР

Зашёл полистать Хабр в поисках чего-нибудь интересного и набрёл на заметку Не зная брода, не лезь в воду. Часть вторая. Человек решил разъяснить всем опасность использования printf. Читаю код и вижу в первой же объявленной функции в первых же двух строках ошибку:
void PrintNormalizedName(const char *raw_name)
{
  char name[MAX_NAME_LEN + 1];
  strcpy(name, raw_name);

  for (size_t i = 0; name[i] != '\0'; ++i)
    name[i] = tolower(name[i]);
  name[0] = toupper(name[0]);

  printf(name);
}
Посмотрите внимательно:
  char name[MAX_NAME_LEN + 1];
  strcpy(name, raw_name);
Если человек допускает такую глупую ошибку, не удивительно, что он может допустить и такую, от которой нас предостерегает:
printf(name);
Хотел прокомментировать, но прокомментировать можно только после регистрации. Ладно, зарегистрировался, но комментировать всё равно нельзя - прочитай правила русского языка и хорошего тона и пройди тест на их знание. Прочитал, прошёл тест. Теперь от меня требуют написать уникальный материал, который должны прочитать и одобрить какие-то местные авторитеты. Этого я делать не стал - пусть на этот сайт, с такими-то правилами, работает кто-нибудь другой.

Если сравнивать с ЛОРом, то можно сказать что Хабр - это клуб горделивых новичков, а ЛОР - это сборище циничных профи. На ЛОРе, в отличие от Хабра, можно комментировать сразу под анонимом. Первым важно доказать, какие они умные, а вторым - просто отдохнуть от работы.

Комментариев нет:

Отправить комментарий