何时需要为NULL
C 字符串中的字符显式提供空间。
例如;
尽管我没有声明str
为 7 个字符长,即字符串加NULL
字符的字符,但这没有任何错误。
#include<stdio.h>
int main(){
char str[6] = "string";
printf("%s", str);
return 0;
}
尽管在这个问题https://stackoverflow.com/a/7652089中,用户说
“如果您稍后需要修改字符串,这很有用,但要知道它不会超过 40 个字符(或 39 个字符后跟一个空终止符) ,取决于上下文)。 ”
“取决于上下文”是什么意思?