C语言中指向指针的指针什么时候用,最好说的详细一些,举个例子! 请高手解答,先谢谢了!

我的意思是说有些情况可以用一级指针解决,可以不用二级指针,但是我说的是那些必须要用到二级指针才能解决的情况... 我的意思是说有些情况可以用一级指针解决,可以不用二级指针,但是我说的是那些必须要用到二级指针才能解决的情况 展开
 我来答
moxsone
2011-01-11 · TA获得超过3333个赞
知道大有可为答主
回答量:2796
采纳率:50%
帮助的人:1536万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/*当然有必须使用二级指针才能解决的情况,如,某个函数的功能
是返回某个问题的计算结果,但是结果数据是不确定个数的值,所以
在调用此函数时不知道事先应分配多少空间来保存返回的数据,此时
的处理办法就是传递一个没有分配空间的指针的指针(地址)进去,
让函数自己根据计算的结果分配足够的空间来保存结果,并返回,
调用者使用了结果后,由调用者负责内存的释放,即,大家可能听说
过的"谁使用(调用)谁释放"之类的话,如下面的代码:*/

//返回不定结果个数的计算函数
//参数int **pResult--为保存返回数据的指针的指针
//参数int &count--为保存返回的结果个数
void Compute2(int **pResult,int &count)
{
//使用随机数来模拟计算结果数的个数
srand(time(NULL));
count = rand()%10;//控制个数在10个以内

*pResult = new int[count];
for ( int i = 0 ; i < count ; i++ )
{
(*pResult)[i] = rand();//给结果随即赋值
}
}

//返回不定结果个数的计算函数(此函数不能返回数据)
//参数int *pResult--为保存返回数据的指针
//参数int &count--为保存返回的结果个数
void Compute1(int *pResult,int &count)
{
//使用随机数来模拟计算结果数的个数
srand(time(NULL));
count = rand()%10;//控制个数在10个以内

pResult = new int[count];
for ( int i = 0 ; i < count ; i++ )
{
pResult[i] = rand();//给结果随即赋值
}
}

int main(void)
{
int *pResult = NULL;//待获取结果的指针
int count = 0;//返回结果的个数

////pResult为指针,第二个参数使用引用传递,使用这个函数时,在函数内部分配的内存的指针并没有返回到主函数中
//Compute1(pResult,count);
////输出结果
//for ( int i = 0 ; i < count ; i++ )
//{
// printf("第 %d 个结果为 : %d\n",pResult[i]);//如果使用这种调用方法,可以看到,执行了Compute1()函数后,pResult的值还是为NULL
//}
//delete [] pResult;
//pResult = NULL;

//&pResult为指针的地址(即指针的指针),第二个参数使用引用传递
Compute2(&pResult,count);
//输出结果
for ( int i = 0 ; i < count ; i++ )
{
printf("第 %d 个结果为 : %d\n",i,pResult[i]);
}

delete [] pResult;
pResult = NULL;

getchar();
return 0;
}

参考资料: http://z.baidu.com/question/185288583.html

小八79
2011-01-11 · TA获得超过504个赞
知道小有建树答主
回答量:360
采纳率:0%
帮助的人:268万
展开全部
下面的例子是通过2级指针访问x的值
比如:
main(){
int x,*p,**pp;
x=10;
p=&x;
pp=&p;
printf("x=%d\n",**pp);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2011-01-11 · TA获得超过877个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:351万
展开全部
什么时候都可以用,那只是一个语法而已
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式