【问题标题】:Multidimensional array in Multidimensional array index C++多维数组索引 C++ 中的多维数组
【发布时间】:2015-06-06 17:45:11
【问题描述】:

我正在实现将Python 代码转换为C++,但是我想将一个多维数组放在另一个多维数组索引处。第一个数组的值应复制到其他二维数组的特定索引。

这是我的 Python 代码:

var2 = "121"
a = [None for x in xrange(3)]
a[0] = [3,4,5],[6,4,7]
a[1] = [3,9,6],[7,8,7]
a[2] = [4,8,7],[7,6,7]

for x in var2:
    print 'Value:',x,'\t'

这是我的 C++ 代码:

 int a1[2][3] = {
        {3,4,5},
        {6,4,7}
    };

    int a2[2][3] = {
        {3,9,6},
        {7,8,7}
    };

    int a3[2][3] = {
        {4,8,7},
        {7,6,7}
    };

现在我有一个数组:

int a[3][];

我想将 a1 复制到a[0][0],就像在我的 python 代码中一样。

我的问题是,如何将 a1、a2、a3 复制到数组 a 中:

a[0][0] = a1;
a[1][1] = a2;
a[2][2] = a3;

另外,数组索引对应的for-loop

【问题讨论】:

  • C 数组不可分配。你可以使用std::array

标签: python c++ arrays multidimensional-array


【解决方案1】:

直接初始化数组以保存数据的一种方法是:

int a[3][2][3] = {

        {{3,4,5},
        {6,4,7},},

        {{3,9,6},
        {7,8,7},},

        {{4,8,7},
        {7,6,7}}
    };


for( int i=0; i<3; i++ ){
        for( int j=0; j<2; j++ ){
            for( int k=0; k<3; k++ ){
                cout<<a[i][j][k]<<'\t';
            }
            cout<<endl;
        }
        cout<<endl<<endl;
    }

【讨论】:

  • 如何检查 var2 字符串,我有 char var2[10] = "123";
猜你喜欢
  • 2016-07-16
  • 2014-04-11
  • 2015-11-04
  • 1970-01-01
  • 2013-11-22
  • 2017-11-17
相关资源
最近更新 更多