关于C语言函数问题

1.图中的while(*p)是什么意思?如果换成用for(),怎么写?2.Fun(&p)这种引用函数的方法有什么说明吗?只见过Fun(n)或者Fun(n,&p)这样的,只... 1.图中的while(*p)是什么意思?如果换成用for(),怎么写?2.Fun(&p)这种引用函数的方法有什么说明吗?只见过Fun(n)或者Fun(n,&p)这样的,只带一个&p的没见过 展开
 我来答
百度网友df00367
2017-02-23 · TA获得超过278个赞
知道小有建树答主
回答量:222
采纳率:0%
帮助的人:65万
展开全部

一般判定都是为真执行,为假不执行

图中的*p指的是“以p变量的内容为地址的变量”,而你只要看看,它所指向的变量的值是不是0,如果不是0,那么就会执行

这个地方其实不用换成for,该用什么用什么,如果是题目需要的话就只能这样写了

for( ;*p; *p/=10)

然后在里面写一堆语句...不过我是没这样写过,不太清楚...

至于fun(&p)这个其实和fun(n, &p)是一样的,只不过不发送n的内容,只发送p的地址而已

&p就是p的地址,把它当做实参发送给fun函数内的形参*p也是可以的...

--------------------------------

为什么我感觉你学的有些死板啊...是老师上课只念ppt吗,,,,,多思考思考啊,fun(n,&p)和fun(&p)都差不多的啊....加油吧...

百度网友53a47f9
2017-02-23 · TA获得超过401个赞
知道小有建树答主
回答量:520
采纳率:0%
帮助的人:337万
展开全部
  1. while(*p)意思是当指针p所指向地址的值不为空时执行

  2. while(*p)可用for(;*p != null;)代替

  3. Fun(&p)表示以p的地址作为参数传递给函数fun并跳转到fun执行相应的代码

  4. 使用&这种取址符的时候要注意判断参数是否有效,比如&p要判断p是否为空,您的代码未做判断,当p == null 时有可能导致程序出错

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
go学龙
2017-02-23 · TA获得超过484个赞
知道小有建树答主
回答量:520
采纳率:76%
帮助的人:229万
展开全部
这样写:
for(; *p ; )

{
你的代码

}

Fun(&p); 没什么说明,这样调用,是因为声明的时候void Fun(int *p)要传递至而已
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式