sizeof和strlen的区别

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;
char *s = "1234";
char *p = s;
sizeof(x++);
cout << x << endl;//4
cout << strlen(p++) << endl;//4
cout << p << endl;//234
 
posted @   muzixuanxuanxuan  阅读(84)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示