sizeof和strlen的区别
1)sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。
2)sizeof是个操作符,strlen是库函数。
3)sizeof的参数可以是数据的类型,也可以是变量,而strlen只能是以结尾为’\0’的字符串作参数。
4)编译器在编译时就计算出了sizeof的结果,而strlen函数必须在运行时才能计算出来。并且sizeof计算的是数据类型内存的大小,而strlen计算的是字符串实际的长度。
5)数组做sizeof的参数不退化,传递给strlen就退化为指针。
6)当适用了于一个结构类型时或变量, sizeof 返回实际的大小, 当适用一静态地空间数组, sizeof 归还全部数组的尺 寸。 sizeof 操作符不能返回动态地被分派了的数组或外部的数组的尺寸。