当前位置: 技术问答>linux和unix
一个strlen的问题?
来源: 互联网 发布时间:2015-10-27
本文导语: #include int main() { char str[ 2 ]; str[ 0 ] = '1'; str[ 1 ] = '2'; printf( "%d", strlen( str ) ); return 0; } 为什么str数组中没有'' strlen( str )仍可以计算str数组的长度? | ...
#include
int main()
{
char str[ 2 ];
str[ 0 ] = '1';
str[ 1 ] = '2';
printf( "%d", strlen( str ) );
return 0;
}
为什么str数组中没有'' strlen( str )仍可以计算str数组的长度?
|
#include
int main()
{
char str[2 + 1]; // 最后一位存放 ''
str[ 0 ] = '1';
str[ 1 ] = '2';
printf( "%d", strlen( str ) ); // 2
return 0;
}
int main()
{
char str[2 + 1]; // 最后一位存放 ''
str[ 0 ] = '1';
str[ 1 ] = '2';
printf( "%d", strlen( str ) ); // 2
return 0;
}
|
站里的字符数组空间缺省为0
如果是堆里的空间就不一定了,最好分配之后立即置空
如果是堆里的空间就不一定了,最好分配之后立即置空