二维数组返回值的问题
来源:互联网 发布:java sql注入原理 编辑:程序博客网 时间:2024/06/06 00:43
函数返回值的问题在项目中用到了好多次,返回数值,一维数组,二维数组,经过总结后发现规律所有发返回值的处理都相同,都需要有一个相同类型的数值,一维数组和二维数组来接收返回值(就是俗话说的种瓜得瓜,种豆得豆)
闲话不多说,直接上代码:
#include<iostream>
using namespace std;
int **num()
{
int **a = new int *[5];
for (int i = 0; i < 5; i++)
{
a[i] = new int[ 5];//易错点,在对二维数组的列进行动态申请内存是容易犯的一个错误就是写成int a[i]=new int [5];
using namespace std;
int **num()
{
int **a = new int *[5];
for (int i = 0; i < 5; i++)
{
a[i] = new int[ 5];//易错点,在对二维数组的列进行动态申请内存是容易犯的一个错误就是写成int a[i]=new int [5];
}
for (int i = 0; i < 5; i++)
{
for(int j = 0; j < 5; j++)
{
a[i][j] = j;
}
}
return a;
}
int main()
{
int **cpy = num();//定义一个相同类型的二维数组接收即可,调用函数的同时接收到了返回值
int i, j;
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
cout << cpy[i][j];
}
cout << endl;
}
}
for (int i = 0; i < 5; i++)
{
for(int j = 0; j < 5; j++)
{
a[i][j] = j;
}
}
return a;
}
int main()
{
int **cpy = num();//定义一个相同类型的二维数组接收即可,调用函数的同时接收到了返回值
int i, j;
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
cout << cpy[i][j];
}
cout << endl;
}
}
在二维数组学习的时候遇到另外一个问题也就是经常会有指针越界的问题,不止一次的错误,调试的时候没有提示,但是到运行的时候就有问题了,但是当你定位的时候也定位在下面
for(inti=0;i<index;i++)
{
kind[index]=new double[6];//这是经常错误的所在,就是index的罪魁祸首,应当把index改为i即可;
}
for(int i=0;i<index;i++)
{
for(int j=0;j<6;j++)
{
kind[i][j]=j;
}
}
每次化了大把的时间,都来调试,在对行申请内存的时候,直接用了index,而没有在for循环中写循环的变量i,也就是只对index的这一行申请了内存,所以当运行到i<index是就会出现错误,切记切记;
阅读全文
0 0
- 二维数组返回值的问题
- 关于C++二维数组的返回问题
- 结构体完美解决二维数组返回值问题
- 二维数组的问题
- C`函数的返回值为一个二维数组
- 解决二维数组取值的问题
- 怎样返回二维数组的指针
- C++返回值是二维数组
- 函数返回二维数组
- 返回一个二维数组
- 二维数组的一些问题
- 二维数组的一些问题
- 指针 二维数组的问题
- 二维数组的地址问题
- 二维数组的指针问题
- 二维数组的查找问题
- 二维数组赋值的问题
- 二维数组的查找问题
- 移动设备&Media Queries,适应移动设备大小
- Unity 复习要点
- php--xdebug设置 ---phpstorm 断点调试
- ubuntu细节集锦
- 作业 | 什么是RUP?
- 二维数组返回值的问题
- Java300StudyNote(3)-Java动态编译(DynamicCompile)、动态运行、反射调用mian方法、JavaCompiler.run()空指针问题
- vue2.0父子组件及非父子组件通信
- iOS程序启动->dyld加载->runtime初始化(初识)
- APUE第三章 文件IO
- Map接口常用的实现类
- Oracle数据添0
- 弱网测试(抓包)工具Charles,fiddler
- css 层叠性 统计权重 优先级问题