(C/C++) 基础问答题

1.简述sizeof和strlen的区别

       最常考察的题目之一。主要区别如下:

              1)sizeof是一个操作符,strlen是库函数。 

              2)sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为‘ ‘的字符串作参数。 

              3)编译器在编译时就计算出了sizeof的结果。而strlen 函数必须在运行时才能计算出来。并且sizeof计算的是数据类型占内存的大小,而strlen计算的是字符串实际的长度。 

              4)数组做sizeof的参数不退化,传递给strlen就退化为指针了。