学习C++中总会遇到求长度如strlen,length,sizeof等,总结一下:
1、strlen()
这是求遇到"\n"为止的参数的长度,参数必须是char*类型,或者char类型的数组,int类型的数组不行,因为“strlen”: 不能将参数 从“int”转换为“const char *”。
举例:
int a[10]={0};
char a1[20]={”duanjia"};
cout<<"a数组的长度"<<strlen(a)<<endl;//错误,“strlen”: 不能将参数 1 从“int [10]”转换为“const char *”
cout<<"a1数组的长度"<<strlen(a1)<<endl;//正确,结果为7
2、length()
求string 类型的长度,遇到'\n'为止。无参数,用法:s.length(),s为string类型,length()为string的成员函数,
举例:
string s="duanjia";
cout<<"string类型的s长度为:"<<s.length()<<endl;//结果为7
3、sizeof()
求变量占字节数,是操作符,不是函数
举例:
int a[10];
cout<<"a的字节数"<<sizeof(a)<<endl;//输出40
每一个数占位4四节,共10个数,总共字节数:10*4=40