这俩个我经常会混淆,今天在此总结一下,以后忘记了可以直接复习:
1.首先他两个类型不同,sizeof是关键字,而strlen是函数。
2.sizeof的参数可以是类型,或者函数,而strlen只能用char * 做参数
例如:int g(); sizeof(g()); //sizeof(g())的值等于 sizeof(int)
注意:sizeof后面如果是类型必须加括号,是变量的话可以不用,sizeof a ;/sizeof a ; sizeof(int) ;
3.大部分编译器对于sizeof是在编译是计算的,而strlen是在运行时计算的
stren可以动态的返回动态数组的大小,而sizeof不行
sizeof与strlen的区别
最新推荐文章于 2022-10-26 16:03:59 发布