135编辑器兑换礼物电话:c语言 会c的来哈5

来源:百度文库 编辑:高校问答 时间:2024/04/28 03:21:34
main()
{ char s[]"Yes\n/No",*ps=s;
puts(ps+4);
*(ps+4)=0;
puts(s);
}
程序运行后的输出结果是

说的越详细越好

char s[]"Yes\n/No"应为:
char s[]="Yes\n/No"
结果
/No
Yes
解释:
main()
{ char s[]="Yes\n/No",*ps=s; /*ps指向字符Y*/

puts(ps+4); /*puts:输出字符串的函数
ps+4指向字符/,puts输出从ps+4开始到字符数组s结束(\0)*/
*(ps+4)=0; /*ps+4指向的字符变为0*/
puts(s);
}
按理s应变为Yes\n0No,则最后应输出
Yes
0No
但实际结果为
Yes

推断s变为Yes\0No,puts遇\0结束输出。