gpt4 book ai didi

c++ - 将二维数组复制到 C++ 中未知大小的其他二维数组

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:23:33 25 4
gpt4 key购买 nike

我有一个关于动态二维数组返回的问题。这意味着我不知道返回二维数组的大小(这取决于某些条件)。让我们看看我的问题

N=3; 
A[N][5]={}//Given a 2D array
for i=1 to N
x=random between 0 and 1
k=1;
while(k<N&&x>0.3)

k++;
B_i=A_k //Look like copy value of array A to array B at position k

我的问题是我不知道k的值,它取决于(k<N&&x>0.3) .因此,我无法初始化数组 B。您能向我建议一种方法吗?这是我试过的代码

int A[2][5] =
{
{1,8,12,20,25},
{5,9,13,24,26},
{15,1,5,2,22}
};


int N=3;
for(int i=0;i<N;i++)
{
double x=random();//create random number between 0 and 1.
int k=0;
while(k<N&&x>0.3)
{
k++;
B[k][4]=A[i][4]; //I have no idea to initial 2D array B
}
}

最佳答案

你可以使用

std::vector<std::vector<int>> B;
st::vector<int> row;
row.push_back(1);
row.push_back(2);
B.push_bak(row);

st::vector<int> row1;
row1.push_back(3);
row1.push_back(4);
B.push_bak(row1);

这样你会得到数组{{1,2},{3,4}}或

int** B;
B = new int*[2];
B[0]=new int[2];
B[1]=new int[2];

B[0][0] =1;
B[0][1] =2;
B[1][0] =3;
B[1][1] =4;

关于c++ - 将二维数组复制到 C++ 中未知大小的其他二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29363579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com