Before pointers/refs

So modern languages like perl, java, and C pass data around (function parameter for example) via pointers (if written correctly that is), so on the stack when you pass a variable in, the address of that variable is written. I was looking into old versions of fortran, before pointers, and was wondering: How was data passed around before pointers? If I passed in a large array to a subroutine, would that array get written to the stack as opposed to a pointer to the array?

1
задан Realn0whereman 27 August 2010 в 11:09
поделиться

2 ответа

Зависит от реализации, но в одном компиляторе Fortran IV функция (под капотом) вызывается с указателем на BSS, где находится массив. Эта (зависящая от реализации) деталь не является частью синтаксиса языка и поэтому отсутствует в документах F4.

1
ответ дан 2 September 2019 в 21:48
поделиться

FORTRAN , по-видимому, предполагал, что аргументы передаются "как если бы" по ссылке.

1
ответ дан 2 September 2019 в 21:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: