请教一个C语言的题目:
point(char*pt);main(){charb[4]={'m','n','o','p'},*pt=b;point(pt);printf("%c\n",*pt);}...
point(char *pt);
main()
{
char b[4]={'m','n','o','p'},*pt=b;
point(pt);
printf("%c\n",*pt);
}
pointf(char *p)
{p+=3;}
试问这具函数的输出结果,
哪位如果知道,说说理由,多谢指点 展开
main()
{
char b[4]={'m','n','o','p'},*pt=b;
point(pt);
printf("%c\n",*pt);
}
pointf(char *p)
{p+=3;}
试问这具函数的输出结果,
哪位如果知道,说说理由,多谢指点 展开
3个回答
展开全部
1 输出结果是:
m
2 原因是实参pt与开参p是值传递关系,改变p的值,pt的值不变。pt原来指向'm',调用point函数后仍然指向'm'。
m
2 原因是实参pt与开参p是值传递关系,改变p的值,pt的值不变。pt原来指向'm',调用point函数后仍然指向'm'。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该还是m吧,传递的是pt这个指针的值,还是值传递,所以不改变原来的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询