一个简单C程序,帮忙解释下
程序:
#include<stdio.h>
#include<string.h>
int main()
{
char x[]="STRING";
x[0]=0; x[1]='\0'; x[2]='0';
printf("%d\n",strlen(x));
}
为什么输出是0呢?
把x[0]=0换成x[0]=1时,输出的是1,这是为什么呢?
帮忙解释下,谢谢~~
[解决办法]
因为strlen()是根据 '\0' 或者 0 来判断字符串的结尾的
发布时间: 2012-03-23 12:06:21 作者: rapoo
一个简单C程序,帮忙解释下
程序:
#include<stdio.h>
#include<string.h>
int main()
{
char x[]="STRING";
x[0]=0; x[1]='\0'; x[2]='0';
printf("%d\n",strlen(x));
}
为什么输出是0呢?
把x[0]=0换成x[0]=1时,输出的是1,这是为什么呢?
帮忙解释下,谢谢~~
[解决办法]
因为strlen()是根据 '\0' 或者 0 来判断字符串的结尾的