问题标题:
一道简单的才语言习题,求详细解释.#include#includevoidmain(){char*p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf("%s%s",p,q);printf("%s,%sn",p,q);}若输入abddef,则输出为()A.def,defB.abc,defC.abc,dD.d,d
问题描述:
一道简单的才语言习题,求详细解释.
#include
#include
voidmain()
{char*p,*q;
p=(char*)malloc(sizeof(char)*20);
q=p;
scanf("%s%s",p,q);
printf("%s,%sn",p,q);}
若输入abddef,则输出为()A.def,defB.abc,defC.abc,dD.d,d
陈听雨回答:
答案:A.def,def
q=p;
scanf("%s%s",p,q);这里先是p接收字符串,它接收了abd,之后q接收字符串,它接收def,由于p和q指向同一个地址,所以只存储了def.
点击显示
其它推荐