二维指针的引用问题

GeoPhoenix 2012-03-26 03:47:21
在外面定义了一个二维指针,调用一个函数完成这个指针的申请,这个函数的原型该怎么定义?
十万火急!
...全文
159 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
GeoPhoenix 2012-03-29
  • 打赏
  • 举报
回复
高人到处有啊!试试先,成功后发奖!:)
勉励前行 2012-03-27
  • 打赏
  • 举报
回复
// 函數通過參數返回值,C++建議使用&
void fun(int **&p); //調用方式 fun(p);
//C語法則是使用指針
void fun(int ***p);//調用方式 fun(&p);
樣本代碼 :
void Fun_New(int **&p)
{
if(p) return ;
p = new int *[100];
for(int i = 0 ; i< 100; ++i)
p[i] = new int[100];
}
void Fun_Delete(int **&p)
{
if(p)
{
for(int i = 0 ; i< 100; ++i)
delete [] p[i];
delete [] p ;
}
p = NULL ;
}
int **p = NULL;
Fun_New(p) ;
p[2][2] = 9990 ;
Fun_Delete(p);

Waiting4you 2012-03-27
  • 打赏
  • 举报
回复
这样?
template<size_t N>
void func(int (*Data)[N])
{
//...
}

int (*p)[10];
int x[100][10];

func(p);
func(x);
ccrun.com 2012-03-27
  • 打赏
  • 举报
回复
void __stdcall test(void **p)
这样?
GeoPhoenix 2012-03-27
  • 打赏
  • 举报
回复
各位老大帮下忙啊!头疼ing!
GeoPhoenix 2012-03-26
  • 打赏
  • 举报
回复
楼上的老大理解错了我的意思了,我是指在外面定义了一个二维指针变量,这个指针变量作为一个形参(关键在这,怎么定义这个形参),通过调用另外的一个函数来完成这个二维指针的内存申请,并不是怎么申请二维指针。
缘中人 2012-03-26
  • 打赏
  • 举报
回复
分配了一级内存,即指针,但是二级没有分配,即指针的指向,所以你的使用是非法访问~
修改:


int** m;
m=new int* [n]
for( int i = 0; i < n; i++ )
m[i] = new int[n];

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧