永发信息网

一道C语言的题,希望给出详细解答

答案:3  悬赏:80  手机版
解决时间 2021-11-16 00:45
  • 提问者网友:十年饮冰
  • 2021-11-15 00:07
有如下程序:
void fun(char*p1,char**p2)
{
p1=++;
(*p2)++;
}
void main
{
char s[]="abc",*p1=s,*p2=s;
fun(p1,&p2);
printf("%s\n%s",p1,p2);
}
程序运行后的输出结果是()。
A.abc B.bc C.abc D.bc
abc bc bc abc
最佳答案
  • 五星知识达人网友:我住北渡口
  • 2020-09-09 09:43
答案应为C
C语言中实参与形参是单向值传递,指针变量也是如此(形参中的p1++并不能改变实参p1值),但形参中的指针变量可以改变实参指针变量的指向值(形参(*p2)++即实现了改变它的指向值,即实参指针p2值)
全部回答
  • 1楼网友:野慌
  • 2019-12-01 20:57
这种题我也很头疼呀。。。。。
  • 2楼网友:刀戟声无边
  • 2021-11-13 16:02
p1=++是什么情况?语法错误啊。可以理解为p1++吗? 如果是选B
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯