How FORTRAN Stores Two-Dimensional Arrays in Memory

Ansvarsfriskrivning för KB-innehåll som inte uppdateras

Den här artikeln skrevs om produkter som Microsoft inte längre erbjuder support för. Därför erbjuds denna artikel "i befintligt skick" och kommer inte att uppdateras.

Summary

FORTRAN is different from languages such as C and Pascal in the way that it stores two-dimensional arrays in memory. Although array elements are referenced in row major notation, i.e., (row, column), just as in C or Pascal, FORTRAN stores two-dimensional arrays as one-dimensional column arrays.


For example, in C, a two-dimensional array with three rows and four columns will be stored in memory in the following sequence:
(1,1),(1,2),(1,3),(1,4),(2,1),(2,2),(2,3),(2,4),(3,1),(3,2),(3,3),(3,4)
However, FORTRAN will store the same array in the following sequence:
(1,1),(2,1),(3,1),(1,2),(2,2),(3,2),(1,3),(2,3),(3,3),(1,4),(2,4),(3,4)
Egenskaper

Artikel-id: 27780 – senaste granskning 1 dec. 2003 – revision: 1

Feedback