关于strlen和sizeof的使用

在学习C语言中发现strlen和sizeof的关系不是很明确,今天来总结一下这两个的区别:

sizeof

  1. 是运算符,用来计算字节数,在计算字符串数组大小时包含()
  2. 在编译时计算大小,参数可以是数组、指针、类型、对象、函数等。

strlen

  1. 是函数,用来测试字符串长度,不包含()
  2. 在运行时计算大小,参数是字符型指针。
#include <stdio.h>
int main(void)
{
	int size1, size2;
	char a[] = "hello";
        
        size1 = sizeof(a);
	size2 = strlen(a);
	printf("%d %d", size1, size2);
        
        return 0;
}

一般在数组中使用sizeof

结果:

总结的不是太详细,希望大家可以加以补充!

原文地址:https://www.cnblogs.com/fanhua666/p/11445319.html