解析strlen(以及部分数组知识)

发布时间:2024年01月07日

strlen的普通使用,以及注意的地方

strlen库函数的作用是计算一个字符串 (字符数组)中元素的个数,其在计算时遇到'/0',则会停止计算,其'/0'不会进入计算

那么先举一个例子进行使用strlen:

对于第一个代码计算出来为6,是毫无疑问的,那么第二个为什么是42呢?

进行查阅得知第一个数组叫字符串数组,第二个为字符数组,在c语言中字符数组并没有规定最后一个字符为'/0',甚至不包含'/0',添加'/0'作为结束标志是针对于c语言中的字符串而言,因为字符数组最后必有'/0'是错误的,但是第一个数组为字符串数组,他会自动添加'/0',其也是作为元素之一,也就是说也会算是长度,sizeof打印出来也就是7;

看完strlen后,我们试着自己实现strlen

while的方法:(/0ascii 码是0)

for的写法

do...while的写法

strlen的完整的自己建立的函数

那么进行查找相关内容对于strlen

int my_strlen(const char* str)
{
? ? int count = 0;
? ? assert(*str != NULL);
? ? while (*str != '\0')
? ? {
? ? ? ? count++;
? ? ? ? str++;
? ? }
? ? return count;
}
int main()
{
? ? char arr[] = "abcd";
? ? int len = my_strlen(arr);
? ? printf("%d\n", len);
? ? return 0;
}

文章来源:https://blog.csdn.net/2301_81265915/article/details/135415846
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。