刷题笔记

简介: 刷题笔记

题目:

image.png

在 VS2013 下,这个结构体所占的空间大小是____字节

A. 16 B. 9 C. 12 D. 8

解:

因为 一般编译器 定义 int 为 4 字节,short 为 2字节, char 为 1字节,而且要考虑 内存分配 4 字节对齐。

int a; – 需要 4 bytes

char b; – 需要 1 byte

short c; – 需要 2 bytes

short d; – 需要 2 bytes。


分配 a 4 字节

分配 b c 4 字节 (浪费1字节 )

分配 d 4 字节 (浪费2字节 )

共用去 12 字节。


结论:

默认情况下,结构体的大小是结构体中最长类型的整数倍。

结构体中的空间分布是按照结构体中最长类型对齐的。

结构体中不同类型的成员,一定是按照自己的类型对齐。比如,int型的起始地址一定是4的整数倍,short型的首地址一定是2的整数倍



相关文章
两个复习技巧【笔记】
两个复习技巧【笔记】
72 0
|
8月前
|
Serverless C语言
【C刷题】day7
【C刷题】day7
50 0
|
SQL 存储 数据库
第5章 数据库完整性——复习笔记
第5章 数据库完整性——复习笔记
|
存储
LeetCode刷题笔记
LeetCode刷题笔记
176 2
|
存储 算法 C语言
日常刷题篇(入门)
我从简单到难,一起走上漫漫刷题路! 我会持续在我的博客中更新我每天刷题的内容! 相互交流!
日常刷题篇(入门)
我从简单到难,一起走上漫漫刷题路! 我会持续在我的博客中更新我每天刷题的内容! 相互交流!
|
存储 索引
牛客网刷题笔记
牛客网刷题笔记
58 0