Next The Identity Function 26

Dynamic Allocation in Fortran

 C THIS DECLARES THAT A IS AN ARRAY WITH 1 ELEMENT IDF0010
 INTEGER A(1) IDF0020
 IDF0030
 FOO = 17 IDF0040
 IDF0050
 C I AM ANALOGOUS TO PTR = &FOO IN C IDF0060
 PTR = IADDR(FOO) IDF0070
 IDF0080
 C I AM ANALOGOUS TO BAR = *PTR IN C IDF0090
 OFFSET = (PTR-IADDR(A))/4 + 1 IDF0100
 BAR = A(OFFSET) IDF0110
 IDF0120
 C ANYWAY THE KEY FEATURE HERE IS IADDR IDF0130
 C WHICH IS NOTHING MORE THAN THE IDENTITY FUNCTION IDF0140
 C IMPLEMENTED IN SYSTEM/370 ASSEMBLY LANGUAGE IDF0150
 IDF0160
 C NOTE THAT THIS ALL DEPENDS ON THE FACT IDF0170
 C THAT FORTRAN IS NOT DOING ANY ARRAY BOUNDS CHECKING IDF0180
 IDF0190
 C GOD HOW I LOVE FORTRAN IDF0200
 IDF0210
 C PLEASE KILL ME NOW IDF0220
 END IDF0230


Next Copyright © 2001 M. J. Dominus

AltStyle によって変換されたページ (->オリジナル) /