C语言一个疑惑:main() { char s[]="Yes\n/No",*ps=s; puts(ps+4); *(ps+4)=0; puts(s); }

如题所述

你想问什么 第一次输出/No看得懂吧 就是ps开始指向Y前移4个就是/ 接着输出/和他后面的No 第二次他吧/改成了0,0表示字符串结束符,在字符串里面用\0表示 就是说字符串输出要是遇到\0就结束,这儿就是这样 所以输出Yes\n 后面就结束了 明白?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-02
估计是不理解ps+4 ps就是指向 "Yes\nNo" 的首地址('Y'),ps+4就是右移4个字符,变成了指向'N'
相似回答