当前位置:网站首页>Sizeof keyword
Sizeof keyword
2022-07-06 22:31:00 【It's Beichen not too PI acridine】
sizeof keyword
1.sizeof It's a keyword, not a function , It is 32 One of the keywords .
2.sizeof When calculating the space occupied by variables , Brackets can be omitted , Calculation type ( Mold ) Size cannot be omitted . In general , Let's not steal this lazy , Write brackets obediently .
3.sizeof The returned footprint is the size opened up for this variable , Not the space it uses . So when it comes to structures , In most cases, we have to consider the problem of byte alignment .
4.sizeof The data type returned is unsigned int; An unsigned number and a signed number operation , Most compilers convert to unsigned type operations .
5. Pay attention to the difference between array names and pointer variables . Usually , We always think that array names are similar to pointer variables , But in use sizeof It's very different when , Use... For array names sizeof Returns the size of the entire array , When operating on a pointer variable, the return is the space occupied by the pointer variable itself , stay 32 Under the condition of bit machine, it is generally 4 byte . And when the array name is used as a function parameter , Inside the function , A formal parameter is just a pointer , So no longer return the size of the array .
sizeof(int)*p What do you mean ?
answer : For calculation int Number of bytes occupied by type , And then multiply by p.
32 A system. :
The pointer size is determined by the current CPU The addressing bits of the operation mode determine .Intel 32 Bit processor 32 Bit operation mode , Logical addressing bits 32, The pointer is 32 position , namely 4 Bytes .Intel 32 Bit processor 16 Bit virtual machine operation mode , Logical addressing bits 16, The pointer is 16 position , namely 2 Bytes .
int *p = NULL;
sizeof( p ) What's the value of ?
answer : Pointer address is used DWORD, sizeof( p ) yes 4 byte
sizeof(*p) Well ?
answer : be equal to sizeof(int) , Probably yes 2 byte It could be 4 byte
(DWORD Namely Double Word, Every word by 2 The length of bytes ,DWORD Double word is 4 Bytes , Each byte is 8 position , common 32 position .)
int a[100];
sizeof (a) What's the value of ?
answer :sizeof(a) = sizeof(int) * 100 = 4 * 100 = 400 byte
sizeof(a[99]) Well ?
answer : Please 100 The size of an element , use int Deposit , Occupy 4 Bytes
sizeof(&a) Well ?
answer : Means to store a The size of the address space and memory address , namely &a It's also an address value . An address is used int Storage is also 4 Bytes
sizeof(&a[0]) Well ?
answer : Take the address of the first element , use int Deposit , Occupy 4 Bytes
int b[100];
void fun(int b[100])
{
sizeof(b);
}
sizeof (b) What's the value of ?
answer :fun In the parameter list b It's a pointer , stay 32 Bit system , The pointer is always 4 Bytes .
边栏推荐
- CocosCreator+TypeScripts自己写一个对象池
- 网络基础入门理解
- Heavyweight news | softing fg-200 has obtained China 3C explosion-proof certification to provide safety assurance for customers' on-site testing
- signed、unsigned关键字
- 二分图判定
- Web APIs DOM time object
- MySQL教程的天花板,收藏好,慢慢看
- 做接口测试都测什么?有哪些通用测试点?
- UE4蓝图学习篇(四)--流程控制ForLoop和WhileLoop
- CCNA Cisco network EIGRP protocol
猜你喜欢

Attack and defense world ditf Misc

NPDP认证|产品经理如何跨职能/跨团队沟通?

LeetCode 练习——剑指 Offer 26. 树的子结构

每日一题:力扣:225:用队列实现栈

【编译原理】做了一半的LR(0)分析器
![[linear algebra] determinant of order 1.3 n](/img/6e/54f3a994fc4c2c10c1036bee6715e8.gif)
[linear algebra] determinant of order 1.3 n

ResNet-RS:谷歌领衔调优ResNet,性能全面超越EfficientNet系列 | 2021 arxiv

Memorabilia of domestic database in June 2022 - ink Sky Wheel

自制J-Flash烧录工具——Qt调用jlinkARM.dll方式

MySQL数据库基本操作-DML
随机推荐
pytorch_YOLOX剪枝【附代码】
Report on technological progress and development prospects of solid oxide fuel cells in China (2022 Edition)
General implementation and encapsulation of go diversified timing tasks
Classification, function and usage of MySQL constraints
Spatial domain and frequency domain image compression of images
What are the interface tests? What are the general test points?
return 关键字
第3章:类的加载过程(类的生命周期)详解
Aardio - 不声明直接传float数值的方法
手写ABA遇到的坑
Assembly and interface technology experiment 5-8259 interrupt experiment
2022-07-05 stonedb的子查询处理解析耗时分析
云原生技术--- 容器知识点
重磅新闻 | Softing FG-200获得中国3C防爆认证 为客户现场测试提供安全保障
自定义 swap 函数
2022-07-05 use TPCC to conduct sub query test on stonedb
[linear algebra] determinant of order 1.3 n
MySQL约束的分类、作用及用法
Management background --5, sub classification
Inno Setup 打包及签名指南