LINUX.ORG.RU

История изменений

Исправление Nervous, (текущая версия) :

недоговариваешь

Воистину так. Забыл в соседней функции переменную цикла инициализировать нулём перед использованием, и при попытке её использовать как индекс массива происходил сеанс магии с разоблачением.

Что характерно, в таком виде эта функция в K&R и красуется, и это по-любому не случайно %)

/* strlen: return length of s */
int strlen(char s[])
{
  int i;
  while (s[i] != '\0')
    ++i;
  return i;
}

Исходная версия Nervous, :

недоговариваешь

Воистину так. Забыл в соседней функции переменную цикла инициализировать нулём перед использованием, и при попытке её использовать как индекс массива происходил сеанс магии с разоблачением.

Что характерно, в таком виде эта функция в K&R и красуется %)

/* strlen: return length of s */
int strlen(char s[])
{
  int i;
  while (s[i] != '\0')
    ++i;
  return i;
}