当前位置:网站首页>The usage and difference between strlen and sizeof
The usage and difference between strlen and sizeof
2022-07-06 05:47:00 【Python's path to immortality】
strlen And sizeof Usage is easy to be confused Next, summarize the similarities and differences between the two I hope I can help you .
function strlen And operators sizeof Usage of :
strlen The code prototype is :size_t strlen(char const* str), It's a function the Pass in The parameter must be a character pointer char* type , And it has to be ‘\0’ ending ,strlen stay function Calculate all the time Used to calculate the specified string str The length of Not the memory size Encountered string str End identifier of ‘\0’ end barring ‘\0’.
sizeof yes C/C++ One of the operators in , Simply put, its function is to return the number of memory bytes occupied by an object or type , The parameter passed in can be Array 、 The pointer 、 type 、 object 、 Functions, etc Calculate at compile time , use sizeof To return the type and the statically allocated object 、 Space occupied by a structure or array , It has nothing to do with what it stores .
sizeof The meaning of the returned value is as follows :
Array —— The amount of array space allocated at compile time ( Include '\0');
The pointer —— The amount of space used to store the pointer (32 Bit system by 4,64 Bit system by 8);
type —— The amount of space occupied by this type ;
object —— The actual space occupied by the object ;
function —— The amount of space occupied by the return type of the function ( The return type of a function cannot be void).
function strlen And operators sizeof The difference between :
1.strlen Is the function Calculate... At run time ,sizeof It's the operator Calculate at compile time .
2.strlen Parameter type can only be character pointer And take ‘\0’ ending ,sizeof The parameter type can be function 、 The pointer 、 Array 、 type 、 Object etc. , Depending on the type of parameter sizeof The meaning of the returned value is also different .
3.strlen Calculate string length , Independent of memory occupied encounter ‘\0’ end , It doesn't contain '\0',sizeof Returns the number of memory bytes occupied by an object or type It has nothing to do with length contain ‘\0’.
边栏推荐
- The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
- Promise summary
- Auto.js学习笔记17:基础监听事件和UI简单的点击事件操作
- H3C S5820V2_5830V2交换机IRF2堆叠后升级方法
- Download, install and use NVM of node, and related use of node and NRM
- 入侵检测领域数据集总结
- [QNX hypervisor 2.2 user manual]6.3.3 using shared memory (shmem) virtual devices
- Query the standard text code corresponding to a work center (s) in the production order
- 局域网同一个网段通信过程
- Embedded interview questions (IV. common algorithms)
猜你喜欢
[cloud native] 3.1 kubernetes platform installation kubespher
P2802 go home
CoDeSys note 2: set coil and reset coil
Station B, Master Liu Er - back propagation
[force buckle]43 String multiplication
(column 22) typical column questions of C language: delete the specified letters in the string.
无代码六月大事件|2022无代码探索者大会即将召开;AI增强型无代码工具推出...
清除浮动的方式
Remember an error in MySQL: the user specified as a definer ('mysql.infoschema '@' localhost ') does not exist
Problems encountered in installing mysql8 on MAC
随机推荐
【经验】win11上安装visio
Jushan database appears again in the gold fair to jointly build a new era of digital economy
华为BFD的配置规范
实践分享:如何安全快速地从 Centos迁移到openEuler
Problems encountered in installing mysql8 on MAC
网络协议模型
清除浮动的方式
什么是独立IP,独立IP主机怎么样?
Detailed summary of SQL injection
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
[machine learning notes] univariate linear regression principle, formula and code implementation
Web Security (VI) the use of session and the difference between session and cookie
[force buckle]43 String multiplication
Implementation of linked list in address book management system
Summary of deep learning tuning tricks
Station B, Mr. Liu Er - multiple logistic regression, structure 7
改善Jpopup以实现动态控制disable
备忘一下jvxetable的各种数据集获取方法
【SQL server速成之路】——身份驗證及建立和管理用戶賬戶
ArcGIS application foundation 4 thematic map making