入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

C Tricks(三)—— 以一维数组的形式对二维数组赋值

创建时间:2016-05-12 投稿人: 浏览次数:1222

二维数组的本质仍然是一维线性空间(行序优先)。

int mat[3][4];
int *p = (int *)mat;        
                // 将二维数组转换为一维数组
int r = sizeof(mat)/sizeof(mat[0]);
int c = sizeof(mat[0])/sizeof(mat[0][0]);
int cnt = 0;
for (int i = 0; i < r; ++i)
    for (int j = 0; j < c; ++j)
        p[i*c + j] = cnt ++;
                            // i*c ⇒ 行
                            // +j ⇒ 列
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。