1.strlen
2.sizeof
1.strlen
size_t strlen ( const char * str );
strlen=string length
strlen是函数,头文件#include<string.h>
是用来求字符串长度的函数
#include<string.h>
#include<stdio.h>
int main()
{
int num = 0;
char arr[] = "abc";
num = strlen(arr);
printf("%d", num);
return 0;
}
//结果 3
🔵 当直接存储字符串时,“abc”会在最后面自动加“\0”。
🔴当遇到“\0”时,停止读取,注意:“\0”只是作为结束标志,而不当成字符。
#include<string.h>
#include<stdio.h>
int main()
{
int num = 0;
char arr1[] = {'a','b','c','\0'};
//char arr2[]={'a','b','c'};
num = strlen(arr);
printf("%d", num);
return 0;
}
//计算arr1,结果为3
//计算arr2,结果为42(随机数)
当使用上述字符数组来存储字符串时,必须在最后面主动加“/0”。
2.sizeof
sizeof是一个运算符,用来计算所占空间字节的大小。
sizeof(arr):求整个数组占的总字节大小
sizeof(arr[0]):求数组中元素占的字节大小
🔵 当直接存储字符串时,“abc”会在最后面自动加“\0”。
🔴由于sizeof是求空间字节大小,所以也需要包含“\0”。
#include<stdio.h>
int main()
{
int num = 0;
char arr[] = "abc";
num = sizeof(arr);
printf("%d", num);
return 0;
}
//结果 4