您的位置:首页 > 编程语言 > C语言/C++

关于strlen函数的一点新发现

2016-09-24 20:42 197 查看
strlen函数被用作计算字符数组的长度,他是以结束字符“\0”作为数组的结束符的,并且不包含结束符的长度(这一点与sizeof不同)一般情况下如果字符数组没有结束符,那么使用strlen函数获取的长度要大于实际长度

如下定义

char a[]={'a','b'};
strlen(a);

那么获得长度为13
但是假如定义如下

static char a[]={'a','b'};
strlen(a);

那么获得的长度就是2,也就是字符数组的长度不知道是不是被编译器进行了优化
测试环境:WIN7 32位+vs2013
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ strlen sizeof