首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
struct T {},sizeof(struct T)的值
[单选题]
对于C++, struct T {},sizeof(struct T)的值为()
4
1
0
编译或运行期错误
查看答案及解析
添加笔记
求解答(6)
邀请回答
收藏(419)
分享
11个回答
添加回答
36
城北不得君
若结构体为空,其大小为1;若不为空,结构体的存储比较复杂,需要考虑内存存储的字节对齐。
发表于 2018-09-08 18:10:29
回复(1)
26
牛客157460761号
c是0,c++是1
发表于 2020-08-31 12:40:47
回复(0)
11
追风柳侠
初学者,真的是学到了。
C++语言中的确规定了空结构体和空类所占内存大小为1,而C语言中空类和空结构体占用的大小是0。
C++语言标准中规定了这样一个原则:“
no object shall have the same address in memory as any other variable
”,即任何不同的对象不能拥有相同的内存地址。
发表于 2022-03-29 10:29:23
回复(0)
6
小明Java
编译器运行结果是0
发表于 2018-09-12 16:41:35
回复(4)
2
HLHS666
所以是按c还是按c艹?
发表于 2021-06-02 00:37:32
回复(1)
2
烬天玉藻前
在VS2019下测得空结构体是1字节。
和类有些像,空类的大小也是1字节。
发表于 2020-08-26 14:31:35
回复(0)
1
临晖
c++中规定,空类的大小为1;因为struct定义时,如果里面有方法的则他就是一个类,没有方法,就是一个结构体,又因为我们在计算其空间时,只计算其中的成员变量名而不计算其中的成员方法,因而可以得出,无方法的类和无方法的结构体计算大小方法机制是相同的
发表于 2023-04-18 09:16:43
回复(0)
0
一笑而过2222
1. 首先明确 sizeof 操作符的作用: - sizeof 用于获取数据类型或变量所占用的字节数。 2. 对于空结构体 struct T {} : - 在C++标准中规定,空结构体(没有任何成员变量)的大小至少为1字节。这是为了保证结构体对象在内存中有唯一的地址。 - 即使它不存储任何实际的数据,编译器也会给它分配1个字节的空间。 所以 sizeof(struct T) 的值为1,答案是B。
发表于 2024-10-25 09:53:52
回复(0)
0
牛客727674141号
结构体跟类是比较像的,如果里面没有成员的话,默认时1个字节的大小,黑马老师讲的
发表于 2022-06-28 21:03:52
回复(0)
0
Juventus-小九
空类是1,空结构体为0
发表于 2022-01-28 14:14:51
回复(0)
0
已注销
这题没意思,c里面是0
发表于 2019-08-22 19:10:22
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
C++工程师
2018
C++
迅雷
来自:
2018迅雷校园招聘A...
上传者:
小小
难度:
11条回答
419收藏
3573浏览
热门推荐
相关试题
若用冒泡排序对关键字序列{10,8...
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
测试工程师
安全工程师
2018
奇安信
评论
(1)
运行 ldd hello 可以得到...
百度
C++
评论
(3)
怎样修改linux的时区,在不重启...
迅雷
Linux
评论
(4)
关于UDP的说法正确的是
迅雷
Java工程师
C++工程师
iOS工程师
安卓工程师
算法工程师
2018
评论
(3)
来自
2018迅雷校园招聘AI...
6个不同式样的珠子,可以串联成()...
产品
运营
游戏策划
设计
牛客
财务
审计
税务服务
风险管理
证券分析师
理财顾问
柜面服务
营销
项目助理
评论
(1)
来自
牛客模拟卷—行测篇A卷
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题