Звідки пішла назва `атоі`?


86

Мовою С, де вони придумали назву atoiдля перетворення рядка в ціле число? Єдине, що я можу придумати, це Array To Integer для скорочення, але це насправді не має сенсу.


12
Протягом багатьох років я завжди читав це так, ніби це було слово французькою мовою, яке вимовлялося як "а-тва" і ніколи не вважало його походженням. Мене збило з пантелику, коли я вперше почув, що хтось читає це як "дуже очко". І тоді все це мало сенс.
Ben Zotto

Відповіді:


155

Це означає Ascii до Integer. Так само, ви можете мати atolдля Ascii Long, atofдля Ascii Float тощо.

Пошук у Google за запитом "atoi" ascii to integer " підтверджує це на кількох сторінках.

У мене виникли проблеми з пошуком який - або офіційний джерело на ньому ... але в цьому переліку штучних сторінок з третього видання Unix (1973) , зібрані самим Денніс Рітчі, він містить рядок:

atoi(III): convert ASCII to integer

Справді, навіть перше видання Unix (близько 1971) осіб сторінки список atoiяк значення Ascii в ціле .

Отже, навіть якщо немає жодної документації, яка є більш офіційною, ніж сторінки, що вказують, що atoiозначає Ascii to Integer (я підозрюю, що є, і я просто не зміг її знайти), це Ascii Integer згідно з конвенцією принаймні з 1971 року.


5
Ну звичайно нестандартне скорочення AsciiTOInteger. Хто називає ці речі !? Ще гірше те, що немає стандартної itoaфункції для реверсу, лишеsprintf
Earlz

1
Чи вважається керівництво Unix 1979 року версії 7 офіційним джерелом? cm.bell-labs.com/7thEdMan/vol1/man3.bun
msw

1
Я припускаю, що сторінки з людьми є настільки офіційними, наскільки це стає. Я очікував, що це буде заявлено принаймні в одному зі стандартів, але це не в проекті стандарту C99, який я маю ...
Марк Рушаков,

8
@Earlz - Ці речі були названі, коли лінкери підтримували лише шість значущих символів на ідентифікатор. Ідіть читати свою історію і не будьте настільки хитрими.
Heath Hunnicutt

1
Тоді його назвали неправильно, оскільки як тільки C потрапляє на машини IBM, їх реалізація функції перетворила б EBCDIC на ціле число :-)
Стів Джессоп,

-2

Я на жаль вірю, що функція atoi означає ascii до цілого числа.


1
Це не дає відповіді на запитання. Ви можете шукати подібні запитання або шукати відповіді на пов’язані та пов’язані запитання в правій частині сторінки. Якщо у вас пов’язане, але інше запитання, поставте нове запитання та додайте посилання на це, щоб допомогти надати контекст. Дивіться: Задавайте запитання, отримуйте відповіді, не відволікаючи уваги
Філнор

2
Поясніть, будь ласка, яка додана цінність цієї відповіді порівняно з набагато старшою та прихильнішою, яка починається з точно тієї ж інформації, а потім продовжує пояснювати, мабуть, дуже придатними посиланнями. Намагайтеся уникати враження, що ви щойно скопіювали основний вміст, сподіваючись на підтримку вашої відповіді. Як допоміжна примітка, що означає "на жаль" і як ви застосовуєте цей термін до цієї ситуації?
Юннош
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.