sizeof VS strlen

来源:互联网 发布:php博客系统源码 编辑:程序博客网 时间:2024/04/27 20:38

sizeof是操作符;strlen是库函数。

sizeof的参数可以是数据类型也可以是变量,strlen的参数必须是以'\0'结尾的字符串。

sizeof在编译时就可以计算出来;strlen必须到运行的时候才能计算出来。

sizeof计算的是数据类型所占的内存大小;strlen计算的是字符串实际长度。

数组做sizeof的参数时不退化;

#include <iostream>using namespace std;void fun(char data[]){cout<<sizeof(data)<<endl;// 4}int main(){char data[100];char str[] = "hello";fun(data);cout<<sizeof(data)<<endl;// 100cout<<sizeof(str)<<endl;// 6system("pause");return 0;}




原创粉丝点击