首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >三维阵列的第二和第三维

三维阵列的第二和第三维
EN

Stack Overflow用户
提问于 2013-08-01 19:15:25
回答 1查看 133关注 0票数 0

如何将三维数组的第二和第三维,绝对是二维数组,复制到另一个三维数组中?下面的代码生成一个空数组(B)。以下只是概念代码。

代码语言:javascript
复制
   int a[ 12 ][ 51 ][ 4 ];
    int b[ 20 ][ 51 ][ 4 ];  
    int main()
       int i;
        for( i= 0; i< 12 ; i++)
        {
            memcpy(b[i], a, sizeof(a));
            }
        return 0
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-01 19:27:44

首先,不要担心效率。这一数据的非常小的大小使得任何效率考虑都无关紧要。因此,不要在这个问题上使用memcpy。相反,尝试一些更明确的方法:

代码语言:javascript
复制
   int a[ 12 ][ 51 ][ 4 ];
   int b[ 20 ][ 51 ][ 4 ];  
   int main()
   {
        int eni, i, j;
        for( eni = 0; eni < 12 ; eni++)
        {
          for (i = 0; i < 51; i++)
          {
             for (j = 0, j < 4; j++)
             {
              b[eni][i][j] = a[eni][i][j];
             }
          }
        }
        return 0;
  }
  // Note. the above code has not been tested, I just threw-it-up here for discussion.

完成此操作后,请尝试使用C将数组存储在主要行形式的版本。或者只是按原样使用上面的代码。也就是说,在整个项目中,您可能有更重要的任务要做?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18002622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档