一道c语言选择题~~~

sinat_35565489 2016-12-11 09:44:08
以下与库函数strcpy (char *p1, char *p2)功能不相等的程序段是_______。
A) strcpy1 (char *p1, char *p2)
{ while ((*p1++=*p2++) !='\0'); }
B) strcpy2 (char *p1, char *p2)
{ while ((*p1=*p2) !='\0') { p1++; p=++; } }
C) strcpy1 (char *p1, char *p2)
{ while ((*p1++=*p2++); *p='\0' }
D) strcpy1 (char *p1, char *p2)
{ while (*p2) *p1++=*p2++; }

答案选D,可是C最后没有赋值'\0'啊,求答~~~
...全文
520 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
LinJie98 2016-12-20
  • 打赏
  • 举报
回复
是选c,因为*p没有定义,还有D答案while里面判断的就\0当while里面为\0跳出while
AlbertS 2016-12-12
  • 打赏
  • 举报
回复
选功能不相等的,c和d都有点问题,不过b选项好像有一个打印错误,这两来看只有A选项是正常的,那木b,c,d都有些问题,但是如果p1是初始化过的,就不需要考虑结尾的'\0',所以还是把题目补充完整我们再选
小灸舞 版主 2016-12-12
  • 打赏
  • 举报
回复
最后必须补上'\0',楼主不是已经知道原因了吗
自信男孩 2016-12-12
  • 打赏
  • 举报
回复
LZ你的命题是不是有错误?p1, p2,怎么会出现p呢
赵4老师 2016-12-12
  • 打赏
  • 举报
回复
不要迷信书、考题、老师、回帖; 要迷信CPU、编译器、调试器、运行结果。 并请结合“盲人摸太阳”和“驾船出海时一定只带一个指南针。”加以理解。 任何理论、权威、传说、真理、标准、解释、想象、知识……都比不上摆在眼前的事实!
paschen 2016-12-11
  • 打赏
  • 举报
回复
你都说了D没\0,所以选D 不过C选项后面应该是*p1='\0' 而不是*p='\0' (应该是打印问题)
sinat_35565489 2016-12-11
  • 打赏
  • 举报
回复
没有人吗。。。
sinat_35565489 2016-12-11
  • 打赏
  • 举报
回复
说反了是选C,D没有'\0'

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧