本文作者:林子木
看了茹鹏网的对于Sizeof 和 Strlen区别的解释,感觉有点乱,那么自己再概括下
1,类型上: Sizeof 是操作符 Strlen 是函数
2,执行时间:Sizeof 是在编译的时候被执行 Strlen 只有在调用的时候才被执行
3,对于数组如 char ss[20]="0123456789"
执行结果 Sizeof 是 20 代表ss总的占用内存的空间 如果 ss是int型 那么就是20*4=80
Strlen 是10 到"\0”为止,算出的是数组内有用的内存 上面的后面int只是一个例子 Strlen只能计算字符串的长度
4,对于指针:
Sizeof 返回的是指针所占的空间 因为指针地址是int型 所以返回是4
Strlen 返回的指针所指的字符串的长度