malloc的时候多申请一个字节,有什么说法吗

图片说明

看代码是给申请的内存清0了,需要看后面的语句有没有给最后一个字节重新复制,如果没有,那这最后一个字节是\0,这样的话如果想格式化输出这个字符串就很方便,因为最后一个字节是\0,直接%s输出就可以了,不用担心越界。

大概是为了存放\n字符吧

是为了存放\n字符吧

字符数组后面默认会多个\0 多申请的一个就是用来保存这个\0的

用来保存'\0','\0'是字符串的结束标志,所以字符串数组要比字符串长度长1