strlen函数的使用和字符数组的定义方式 | 您所在的位置:网站首页 › 求字符数组长度的函数是 › strlen函数的使用和字符数组的定义方式 |
首先我们看一道题目 这道题的答案是C 接下来就会解释strlen函数的使用规则,和字符数组的定义方法对strlen函数的影响 首先我们写一串代码 #include #include int main() { char ch[] = { 'a','b' }; int len = strlen(ch); printf("%d" , len); return 0; } 很显然运行的结果是随机值,这是为什么呢? 这就关于strlen函数的用法了,首先strlen函数是一个读取字符串长度的一个函数,这个函数他是读取到‘\0’前的所有元素,所以说明上面代码数组中只有两个元素,并不包括‘\0’,所以才会打印出随机值。 接下来我们再看一串代码 #include #include int main() { char ch[] = { 'a','b','\0' }; int len = strlen(ch); printf("%d" , len); return 0; } 这串代码打印的结果就是2。 所以大家明白了吗。。 接下来我们再来看一串代码 #include #include int main() { int leng = strlen(ch1); int leng = strlen(ch1); printf("%d" , leng); return 0; } 我想大家应该知道这串代码打印的结果了把,很显然是5。 所以我们来总结一下 #include #include int main() { char ch[] = { 'a','b' };//这样子定义字符数组的话是不会有'\0'; char ch1[] = "abcde";//这样子定义会有'\0' 总共有六个元素 'a' 'b' 'c' 'd' 'e' '\0' int len = strlen(ch); int leng = strlen(ch1); printf("%d %d", len,leng); return 0; } 这是打印结果 strlen函数会读取‘\0’前的所有元素,这就和字符数组如何定义有关。 希望能帮到刚开始写代码对strlen函数不明白的同学有帮助。 |
CopyRight 2018-2019 实验室设备网 版权所有 |