LINUX.ORG.RU

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

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

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки «123», а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла» и от «0». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.

p.s.

Опять же, строка «123ОЛОЛОПЫЩЬПЫЩЬ» валидна именно с точки зрения функции atoi. Я бы, например, не считал ее валидной (почему я должен считать валидной строку, в которой присутствуют «левые» символы?)

Исправление RiseOfDeath, :

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки «123», а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла» и от «0». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.

p.s.

Опять же, строка «123ОЛОЛОПЫЩЬПЫЩЬ» валидна именно с точки зрения функции atoi. Я бы, например, не считал ее валидной (почему я должен считать числом строку, в которой присутствуют «левые» символы?)

Исправление RiseOfDeath, :

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки «123», а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла» и от «0». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.

p.s.

Опять же, строка «123ОЛОЛОПЫЩЬПЫЩЬ» валидна с точки зрения функции atoi. Я бы, например, не считал ее валидной (почему я должен считать числом строку, в которой присутствуют «левые» символы?)

Исправление RiseOfDeath, :

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки «123», а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла» и от «0». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.

Исправление RiseOfDeath, :

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки «123», а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.

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

Опять же, исходя из документации строка «123ОЛОЛОПЫЩЬПЫЩЬ» ничем не отличается от строки. а строка «0бла-бла-бла» ничем не отличается от «бла-бла-бла». Т.к., согласно документации, функция игнорирует все пробелы вначале, а затем парсит число; если натыкается на не число, то заканчивает парсить. Закономерно мы пропустили все ноль пробелов, наткнулись на нечисло и закончили парсинг. Строго говоря мы даже «ошибку» не получили. Так что 0 это даже не ошибка (исходя из алгоритма функции), а валидный результат.