C++与MATLAB数组的存储结构

来源:互联网 发布:ubuntu 16.04卸载qq 编辑:程序博客网 时间:2024/04/30 10:08

数组都是以一维数组的形式分配在数据空间的:

1、一维数组X[M]的情况下

     index_C=i;

     index_matalb=i;

2、二维数组A[M][N]的情况下

    index_C=i*N+j

   index_matlab=i+j*M

   因为在c++中,第(i,j)个元素用x[i*N+j]形式读取,在MATLAB中用X【i+j*M】,MATLAB是按列存储数据的,c中是按行。

3、三维数组W[M][N][K] 中第(i,j,k)个元素读取方法。

     index_c=i*N+j+k*M*N

     index_matlab=i+j*M+K*M*N


总之,在c中数据是按行存储的,MATLAB是按列存储的。。。。

M表示列数,N表示行数

0 0