c版:#include stdio.h#include stdlib.h#define row 4#define col 8 int main(){int **p; int i,j; //p[4][8] //开始分配4行8列的二维数据 p = malloc(sizeof(int *)*row);for(i=0;irow;i++){p[i]= mall...
c版:
#include <stdio.h>
#include <stdlib.h>
#define row 4
#define col 8
int main()
{
int **p;
int i,j; //p[4][8]
//开始分配4行8列的二维数据
p = malloc(sizeof(int *)*row);
for(i=0;i<row;i++){
p[i]= malloc(sizeof(int)*col);
}
//初始化
for(i=0; i<row; i++){
for(j=0; j<col; j++){
p[i][j] = j*i;
}
}
//打印数据
for(i=0; i<row; i++){
for(j=0; j<col; j++)
{
if(j==0)
printf("\n");
printf("%d \t",p[i][j]);
}
}
//开始释放申请的堆
for(i=0; i<row; i++){
free(p[i]);
}
free(p);
return 0;
}
c++版:
#include <iostream>
using namespace std;
int main()
{
int **p;
int i,j; //p[4][8]
//开始分配4行8列的二维数据
p = new int *[4];
for(i=0;i<4;i++){
p[i]=new int [8];
}
for(i=0; i<4; i++){
for(j=0; j<8; j++){
p[i][j] = j*i;
}
}
//打印数据
for(i=0; i<4; i++){
for(j=0; j<8; j++)
{
if(j==0) cout<<endl;
cout<<p[i][j]<<"\t";
}
}
//开始释放申请的堆
for(i=0; i<4; i++){
delete [] p[i];
}
delete [] p;
return 0;
}
沃梦达教程
本文标题为:c/c++二级指针动态开辟内存
猜你喜欢
- Easyx实现扫雷游戏 2023-02-06
- C++ 数据结构超详细讲解顺序表 2023-03-25
- ubuntu下C/C++获取剩余内存 2023-09-18
- C语言手把手带你掌握带头双向循环链表 2023-04-03
- Qt计时器使用方法详解 2023-05-30
- c++ const 成员函数,返回一个 const 指针.但是返回的指针是什么类型的 const? 2022-10-11
- C语言qsort()函数的使用方法详解 2023-04-26
- 我应该为我的项目使用相对包含路径,还是将包含目录放在包含路径上? 2022-10-30
- 详解C语言中sizeof如何在自定义函数中正常工作 2023-04-09
- C语言详解float类型在内存中的存储方式 2023-03-27
