Cái tên ʻatoi` bắt nguồn từ đâu?


86

Trong ngôn ngữ C, nơi họ nghĩ ra tên atoiđể chuyển đổi một chuỗi thành một số nguyên? Điều duy nhất tôi có thể nghĩ đến là Array To Integer cho một từ viết tắt nhưng điều đó không thực sự có ý nghĩa.


12
Trong nhiều năm, tôi luôn đọc nó như thể nó là một từ trong tiếng Pháp, được phát âm như "ah-twah" và không bao giờ coi nó là nguồn gốc của nó. Tôi đã bối rối khi lần đầu tiên nghe ai đó đọc nó là "ay-quá-mắt". Và sau đó tất cả đều có ý nghĩa.
Ben Zotto

Câu trả lời:


155

Nó có nghĩa là Ascii thành Số nguyên. Tương tự như vậy, bạn có thể có atolAscii to Long, atofAscii to Float, v.v.

Tìm kiếm trên Google cho 'atoi "ascii to integer"' xác nhận điều này trên một số trang.

Tôi đang gặp khó khăn khi tìm bất kỳ nguồn chính thức nào trên đó ... nhưng trong danh sách các trang nam này từ phiên bản thứ ba Unix (1973) do chính Dennis Ritchie thu thập, nó có dòng:

atoi(III): convert ASCII to integer

Trên thực tế, ngay cả ấn bản đầu tiên của Unix (năm 1971) các trang đàn ông cũng liệt kê atoicó nghĩa là Ascii to Integer .

Vì vậy, ngay cả khi không có bất kỳ tài liệu nào chính thức hơn các trang người đàn ông chỉ ra rằng atoicó nghĩa là Ascii to Integer (tôi nghi ngờ là có và tôi không thể xác định được nó), nó đã được Ascii to Integer theo quy ước ít nhất là từ năm 1971.


5
Ah tất nhiên là một từ viết tắt không chuẩn AsciiTOInteger. Ai đặt tên cho những thứ này !? Tệ hơn nữa là không có itoachức năng tiêu chuẩn nào cho việc đảo ngược, chỉsprintf
Earlz

1
Hướng dẫn sử dụng Unix phiên bản 7 năm 1979 có được tính là nguồn chính thức không? cm.bell-labs.com/7thEdMan/vol1/man3.bun
msw

1
Tôi đoán các trang người đàn ông chính thức như nó được. Tôi đã chờ đợi nó được khai báo trong một trong những tiêu chuẩn, ít nhất, nhưng nó không có trong dự thảo tiêu chuẩn C99 mà tôi có ...
Đánh dấu Rushakoff

8
@Earlz - Những thứ này được đặt tên khi trình liên kết chỉ hỗ trợ sáu ký tự quan trọng cho mỗi định danh. Hãy đọc lịch sử của bạn và đừng quá cáu kỉnh.
Heath Hunnicutt

1
Đặt tên sai rồi, vì càng sớm càng C trúng máy IBM, hiện thực của họ về chức năng sẽ phải EBCDIC chuyển đổi sang số nguyên :-)
Steve Jessop

-2

Tôi rất tiếc rằng hàm atoi có nghĩa là ascii thành số nguyên.


1
Điều này không cung cấp câu trả lời cho câu hỏi. Bạn có thể tìm kiếm các câu hỏi tương tự hoặc tham khảo các câu hỏi liên quan và được liên kết ở phía bên tay phải của trang để tìm câu trả lời. Nếu bạn có một câu hỏi liên quan nhưng khác, hãy đặt một câu hỏi mới và bao gồm một liên kết đến câu hỏi này để giúp cung cấp ngữ cảnh. Xem: Đặt câu hỏi, nhận được câu trả lời, không có phiền nhiễu
Filnor

2
Vui lòng giải thích giá trị gia tăng của câu trả lời này là gì so với câu trả lời cũ hơn và được ủng hộ nhiều hơn, bắt đầu với cùng một thông tin và sau đó tiếp tục giải thích bằng các tham chiếu có vẻ rất áp dụng. Cố gắng tránh ấn tượng rằng bạn vừa sao chép nội dung chính với hy vọng nhận được sự ủng hộ cho câu trả lời của bạn. Như một lưu ý bên lề "đau buồn" có nghĩa là gì và bạn áp dụng thuật ngữ đó như thế nào cho tình huống này?
Yunnosch
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.