Подтвердить что ты не робот

Что случилось с ключевым словом "entry"?

Во время круиза по моей белой книге на днях я заметил в списке ключевых слов C. запись является одним из ключевых слов в этом списке.

Он зарезервирован для будущего использования. Возвращаясь к моим дням Фортрана, была функция, которая использовала оператор entry, чтобы сделать вторую сигнатуру аргумента или точку входа в функцию.

Это то, для чего изначально предполагалось, что запись предназначалась для использования? или что-то совершенно другое?

Какова история с ключевым словом ?

4b9b3361

Ответ 1

Я понятия не имел, поэтому я искал Google, чтобы найти что-то об этом. Это то, что я нашел.

Сначала он был включен как зарезервированное ключевое слово.

Q. Каково было ключевое слово записи, указанное в K & R1?
A. Он был зарезервирован для разрешения функций с несколькими, иначе названными точками входа, но был снят.

(Из http://archives.devshed.com/forums/c-c-134/c-programming-faqs-371017.html.)

Это никогда не было стандартизировано; некоторые компиляторы использовали его, очень личным образом.

Позднее было объявлено устаревшим, я думаю.

Ответ 2

В FORTRAN, "ENTRY" может объявить вторую точку входа в подпрограмму. Это была структурированная ночная программа для программирования, и, к счастью, C решил не принимать ее.

Ответ 3

Ключевое слово entry взято из PL/I и позволило использовать несколько точек входа в функцию. Ключевое слово было реализовано некоторыми компиляторами, но никогда не было стандартизировано.

Ответ 4

В дополнение к принятому ответу "запись" упоминается в K & R1:

2.3 Ключевые слова

Следующие идентификаторы зарезервированы для использования в качестве ключевых слов и не могут использоваться иначе

int extern else

char зарегистрируйтесь для

float typedef do

double static while

struct goto switch

Случай возврата соединения

long sizeof default

короткая запись

unsigned continue

auto, если

и здесь:

Ключевое слово записи в настоящее время не реализуется никаким компилятором, но зарезервировано для будущего использования. Некоторые реализации также резервируют слова "fortran" , и "asm" .

Затем в Обосновании для языка ANSI C (C89) это упоминается здесь:

3.1.1 Ключевое слово

[...]

Записи ключевых слов "fortran" и "asm" не были включены, поскольку они либо никогда не использовались, либо не переносимы. Использование "fortran" и "asm" в качестве ключевых слов не является общим расширением.