自学内容网 自学内容网

字符串和字符数组(2)

6.求字符串长度

C语言中有一个库函数叫strlen,这个函数是专门用来求字符串长度的。strlen的使用需要包含一个头文件string.h。

strlen函数统计的是字符串中\0之前的字符个数,所以传递给strlen函数的字符串中必须得包含\0.

请看代码:

#include <stdio.h>
#include <string.h>
int main()
{

char str1[10] = "asdfgh";
printf("%d\n", strlen(str1));

char str2[10] = { 'a','s','d','f','g','h' };
printf("%d\n", strlen(str2));

char str3[] = { 'a','s','d','f','g','h' };
printf("%d\n", strlen(str3));

//strlen和sizeof的对比
printf("%d\n", strlen(str1));
printf("%d\n", sizeof(str1));
return 0;
}

str1数组是使用常量字符初始化,也是不完全初始化除了前面七个元素a,s,d,f,g,h,\0其余的默认为0

 str2数组使用大括号的方式初始化,也是不完全初始化,前面的6个元素a,s,d,f,g,h,剩余i的元素默认初始化默认为0,也就是\0

str3数组也是使用的大括号初始化,同时也没有直接指定数组大小,数据大小是根据初始化内容来确定的,数组中仅存了a,s,d,f,g,h,没有\0字符。

 

strlen和sizeof对比

 

strlen统计的是字符串的长度

sizeof计算的是数据的大小。


 完


原文地址:https://blog.csdn.net/wangjing_0522/article/details/142717929

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!