#include<iostream>
using namespace std;
int main(){
可以申请一个比题目要求大的空间,
但一定要记住对哪些值进行操作,
不要造成数组越界。
int num;
还可以用以下动态内存分配的方式
比如一维数组
//int *array=new int[num];//注意*的位置
等价于下面这句
//int array[num];
二维数组如下:
int row,col;
cin>>row>>col;
int **a1=new int*[row];//分配行空间,注意*的个数和位置
for(int i=0;i<row;i++)
a1[i]=new int[col];//分配列空间,此处没有*
以上两句等价于下面这句
//int a1[row][col];
//赋值,访问时可以和普通数组一样操作,
不要把它看做指针,申请完空间后把指针
这个词忘掉,只有数组。
for(int i=0;i<row;i++)
for(int j=0;j<col;j++)
cin>>a[i][j];//输入矩阵中的每一个数
//二维数组访问
for(int i=0;i<row;i++){
for(int j=0;j<col;j++)
cout<<a1[i][j]<<" ";//考试中注意后面可能没有空格
cout<<endl;
}
system("pause");
return 0;
}
动态内存 数组声明
最新推荐文章于 2022-05-23 11:19:07 发布