Ważne jest, aby przechowywać dane w sposób umożliwiający ich pobranie w używanych językach. Język C przechowuje w kolejności głównej wiersza (najpierw pierwszy wiersz, potem cały drugi wiersz, ...) z każdym indeksem zaczynającym się od 0 do jego wymiaru-1. Zatem kolejność tablicy x [2] [3] to x [0] [0], x [0] [1], x [0] [2], x [1] [0], x [1] [ 1], x [1] [2]. Zatem w języku C x [i] [j] jest przechowywane w tym samym miejscu co jednowymiarowa pozycja tablicy x1dim [i * 3 + j]. Jeśli dane są przechowywane w ten sposób, można je łatwo pobrać w języku C.
Fortran i MATLAB są różne. Przechowują się w kolejności według kolumn (cała pierwsza kolumna jest pierwsza, potem cała druga kolumna, ...), a każdy indeks zaczyna się od 1 do swojego wymiaru. Więc kolejność indeksów jest odwrotnością C i wszystkie indeksy są o 1 większe. Jeśli przechowujesz dane w kolejności języka C, FORTRAN może znaleźć X_C_language [i] [j] za pomocą X_FORTRAN (j + 1, i + 1). Na przykład X_C_language [1] [2] jest równe X_FORTRAN (3,2). W tablicach jednowymiarowych ta wartość danych to X1dim_C_language [2 * Cdim2 + 3], czyli ta sama pozycja co X1dim_FORTRAN (2 * Fdim1 + 3 + 1). Pamiętaj, że Cdim2 = Fdim1, ponieważ kolejność indeksów jest odwrócona.
MATLAB to to samo, co FORTRAN. Ada jest tym samym, co C, z tym wyjątkiem, że indeksy zwykle zaczynają się od 1. Każdy język będzie miał indeksy w jednym z tych zleceń C lub FORTRAN, a indeksy zaczną się od 0 lub 1 i można je odpowiednio dostosować, aby uzyskać przechowywane dane.
Przepraszam, jeśli to wyjaśnienie jest mylące, ale myślę, że jest dokładne i ważne dla programisty.