C++二级指针和二维数组
来源:互联网 发布:淘宝网松糕鞋女鞋网的 编辑:程序博客网 时间:2024/06/05 07:55
C++二级指针和二维数组
以前刷leetcode的时候,除了题目要求用堆资源(例如链表什么的),一般情况下不管一维二维都是用STL的vector来传递参数的。前几天做题看到这样一个例子:
int func(int **grid,int m,int n);
很显然这需要传递一个二级指针进去,于是我想当然的:
int main(){ int a[2][2]={{1,2},{1,2}}; int ret = func(a,m,n); int ret = func((int **)a,m,n);//这是另外一种想当然的写法}
二级指针和二维数组当然是有区别的,具体可以参考一蛤:
http://blog.163.com/hbu_lijian/blog/static/126129153201001123622971/
其实vector是挺好用的,如果非得用这种方式来写,网上的方法也很多,这里挑一种最好理解的方法使用堆的资源申请二维的动态数组。
int main(){ int grid[5][5] = { { 0, 0, 0, 0, 0 }, { 0, 1, 1, 0, 0 }, { 0, 0, 1, 1, 0 }, { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } };//二维数组 int n = 5;//row int m = 5;//col int **p = new int*[5];//二级指针申请空间 for (int i = 0; i < 5; i++) { p[i] = new int[5]; } for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { p[i][j] = grid[i][j]; } } for (int i = 0; i < 5; i++) { delete[] p[i];//释放资源 } delete p; system("pause"); return 0;}
1 0
- 二维数组和二级指针
- 二级指针和二维数组
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- 二维数组和二级指针
- C和指针之二维字符串数组用指针数组、数组指针、二级指针打印
- C++:二维数组和二级指针的传递问题
- C语言中的二级指针和二维数组问题
- C语言中的二级指针和二维数组问题
- C/C++二维数组名和二级指针
- C语言的二维数组和二级指针的理解
- The connection to adb is down, and a severe error has occured问题
- JAVA多线程和并发基础面试问答(转载)
- 【精要主义】软件工程师最重要的素质
- 重温3 Activity Intent 向下传递数据 向上传递数据
- 线程间协作的两种方式:wait、notify、notifyAll和Condition
- C++二级指针和二维数组
- Centos7设置成和公司工作地方一样的192.168.9.xxx网段
- 利用Canvas+js实现贪吃蛇(2)
- Service中通过main方法加载Spring连接数据库等操作
- 第12周 数据结构和算法 线性表-5 栈-栈完成进制转换及应用
- 杭电2053S之Switch Game
- 应用服务器性能优化 之 消息队列(MQ:Message Queue)
- vim使用—实现程序的自动补齐(C语言)
- FFMPEG编译后的error