1.sizeof和strlen的区别 strlen是头文件cstring中的函数,sizeof是c++的运算符,strlen测量的是字符串的实际长度,以\0结束,而sizeof测量的是对象或者表达式类型占用的字节大小
size_t strlen(const char *str){
size_t length = 0;
while(*str++){
++length;
}
return length;
}
1.strlen是库函数,所以是在程序运行的过程中计算,而sizeof是在编译时计算,sizeof的参数可以是类型或变量,还可以是表达式,strlen的参数必须是char *类型
2.sizeof在运行时不会对表达式进行计算,只会推导表达式的类型从而计算占用的字节大小,而strlen是一个函数,如果接受表达式则会对表达式进行计算
int x = 4;标签:cout,区别,char,length,sizeof,strlen,表达式 From: https://www.cnblogs.com/cintang/p/17380259.html
char *s = "1234";
char *p = s;
sizeof(x++);
cout << x << endl;//4
cout << strlen(p++) << endl;//4
cout << p << endl;//234