C++ c+中的动态数组+;

C++ c+中的动态数组+;,c++,arrays,pointers,multidimensional-array,C++,Arrays,Pointers,Multidimensional Array,我需要实现一个5x5动态阵列,其中 它的每一个元素都等于它的两个指数之和。例如,第一个元素(0,0)的值为0+0=0 这是我的密码: # include<iostream> using namespace std; int main() { int size =5; int *array=new int[size]; for (int i = 0; i < size; i++) delete [] array; return 0;

我需要实现一个5x5动态阵列,其中 它的每一个元素都等于它的两个指数之和。例如,第一个元素(0,0)的值为0+0=0

这是我的密码:

# include<iostream>
using namespace std;
int main()
{
    int size =5;
    int *array=new int[size];
    for (int i = 0; i < size; i++)



    delete [] array;

  return 0;

}
#包括
使用名称空间std;
int main()
{
int size=5;
int*数组=新的int[大小];
对于(int i=0;i

我需要帮助来实现索引和。

首先,您应该创建一个2d数组,而不仅仅是一个数组

void foo() {
  int **a = new int*[5];
    for (int i = 0; i < 5; i++)
        a[i] = new int[5];
  }
  for (int i = 0; i < 5; i++)
     for (int j = 0; j < 5; j++)
        a[i][j] = i + j;
  for (int i = 0; i < 5; i++) {
      for (int j = 0; j < 5; j++)
           cout << a[i][j] << " ";
      cout << endl;
  }
  for (int i = 0; i < 5; i++)
     delete[] a[i];
  delete[] a;
}
void foo(){
整数**a=新整数*[5];
对于(int i=0;i<5;i++)
a[i]=新整数[5];
}
对于(int i=0;i<5;i++)
对于(int j=0;j<5;j++)
a[i][j]=i+j;
对于(int i=0;i<5;i++){
对于(int j=0;j<5;j++)

cout您首先需要实现一个二维数组。:)

给你

#include <iostream>

int main()
{
    const size_t N = 5;

    int ( *array )[N] = new int[N][N];

    for ( size_t i = 0; i < N; i++ )
    {
        for ( size_t j = 0; j < N; j++ ) array[i][j] = i + j;
    }

    for ( size_t i = 0; i < N; i++ )
    {
        for ( size_t j = 0; j < N; j++ ) std::cout << array[i][j] << ' ';
        std::cout << std::endl;
    }

    delete [] array;

    return 0;
}
#包括
int main()
{
常数大小N=5;
int(*数组)[N]=新int[N][N];
对于(大小i=0;i对于(尺寸j=0;jC++
中没有内置的可调整大小的数组,因此,如果用动态的方法来调整大小,这是必须解决的问题。只要能够引用两个索引之和,自然的建议是使用函数而不是数组在“调整大小”问题上避免使用。不鼓励使用纯代码的答案。请提供解决OP问题的代码和解释。这很难阅读和维护。有更快更简单的方法实现2d数组。@hardmath答案最有帮助。OP询问如何实现5x5动态数组,我演示了如何实现。您可以在你自己对问题的回答中写下你自己的幻想。你的代码有助于构造和“破坏”2D数组,它是“动态”的,因为数组在堆栈上被分配了一个大小参数
N
,但这可能不是“动态”的意思这是OP的想法。我不是你的反对者,但肯定对你的代码的一些解释会改善答案,并且几乎肯定会赢得我的支持票:)!@hardmath再次写下你自己的答案。怎么了?非常感谢你们大家帮了我,你的解释非常好,现在我明白了:)我通常没看到过这样做,但考虑到这里OP确实需要一个2D数组(因此每个col维度都是相同的),这很好。