关注
sizeof一个空的结构体,返回什么
答:1。这是因为在 C++ 中,每个对象都必须有一个独一无二的地址,所以即使结构体中没有任何成员,它也必须占用至少 1 个字节的空间,以便能够被区分开来。
然而,我发现在有的编译器上如下代码是可以运行的:
struct a{
char b[0];
};
int main(){
a b;
cout << sizeof(b) << endl;
printf("%p\n",&b);
a c;
cout << sizeof(c) << endl;
printf("%p\n",&c);
return 0;
}
并且输出如下:
0
0x7fff2e25db36
0
0x7fff2e25db37
所以说即使sizeof返回为0了,仍然占用了1个字节的大小。我觉得很神奇,有大佬帮忙解释以下吗
查看原帖
3 1
相关推荐
05-26 09:46
门头沟学院 嵌入式软件开发 点赞 评论 收藏
分享
05-24 16:20
门头沟学院 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 打工人的工作餐日常 #
51440次浏览 402人参与
# 哪些公司真双非友好? #
14971次浏览 81人参与
# 追觅科技求职进展汇总 #
17694次浏览 120人参与
# 你觉得技术面多长时间合理? #
98657次浏览 715人参与
# 26届的你们有几段实习? #
38966次浏览 447人参与
# 月薪多少能在一线城市生存 #
21717次浏览 270人参与
# 双非能在秋招上岸吗? #
220757次浏览 1168人参与
# 你后悔自己读研吗? #
16845次浏览 229人参与
# 非技术2023笔面经 #
248365次浏览 2412人参与
# 你以为的实习VS真实的实习 #
23807次浏览 219人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
117054次浏览 808人参与
# 你认为哪些项目算烂大街? #
15778次浏览 265人参与
# 机械校招之路总结 #
93454次浏览 1893人参与
# 学历贬值真的很严重吗? #
23251次浏览 166人参与
# 你被哪些公司秒挂过? #
29085次浏览 236人参与
# 产品实习,你更倾向大公司or小公司 #
159303次浏览 1964人参与
# 网申一定要掌握的小技巧 #
10619次浏览 66人参与
# 找工作时的取与舍 #
82526次浏览 589人参与
# 最难的技术面是哪家公司? #
8763次浏览 70人参与
# 机械人,你拿到几个offer啦 #
38683次浏览 320人参与