1.sizeof 和 strlen 的区别
(1)性质不同:sizeof是一个操作符(和+、-、*、/类似),strlen是一个库函数。编译器在编译时就计算出了sizeof的结果,而strlen函数在运行时才能计算出来。
(2)操作对象不同:strlen的参数只能是以‘\0’结尾的字符串,sizeof的参数可以是数据类型或者变量。
(3)计算结果类型不同:sizeof计算的是数据类型占内存的大小,单位是字节;而strlen计算的是字符串实际的长度,单位是个。
(4)数组做sizeof的参数不退化,传递给strlen就退化为指针。