社区
C++ 语言
帖子详情
结构体分析
liangbina07
2013-05-04 12:23:00
typedef struct _T{
int nType;
int p[0];
};
sizeof(T) = ???;
上面结构的用法师合法的,就上面的这样设计有什么意义?
...全文
212
8
打赏
收藏
结构体分析
typedef struct _T{ int nType; int p[0]; }; sizeof(T) = ???; 上面结构的用法师合法的,就上面的这样设计有什么意义?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
就是那个党伟
2013-05-06
打赏
举报
回复
楼主这么个struct好诡异的说
liangbina07
2013-05-05
打赏
举报
回复
懂了,谢谢上面各位兄弟的解答!
漫步者、
2013-05-04
打赏
举报
回复
你的数组大小不能为0吧,抛开这个语法,在设计上m没有什么不妥当的,我经常这么干
愤怒的翅膀
2013-05-04
打赏
举报
回复
数组都能为0,,好吧,那就4byte了
秃头披风侠
2013-05-04
打赏
举报
回复
结构的大小是一个int,最后的数组大小为0,因此应该不占空间。 楼主的这种写法是
柔性数组
,最后一个数组可以用来进行结构的扩充... 楼主可以搜索下柔性数组,资料还是蛮多的。
hugett
2013-05-04
打赏
举报
回复
在标准 C 或者 C++ 中由于不支持 0 长度的数组,所以 int array[0]; 这样的定义是非法的。不过有些编译器的扩展功能支持 0 长度的数组。 在 C 中,0 长度的数组的主要用途是用来作为结构体的最后一个成员,然后用它来访问此结构体对象之后的一段内存(通常是动态分配的内存)。由于其非标准性,在程序中尽量避免使用 0 长度的数组。作为替换,可以使用 C99 标准中的不完整数组来替换 0 长度的数组定义。 具体可以看一下:
http://blog.csdn.net/zhaqiwen/article/details/7904515
ri_aje
2013-05-04
打赏
举报
回复
数组大小必须大于零。
VPP中的重要
结构
体
分析
VPP中的重要
结构
体
分析
ip、tcp、udp_报头
结构
体
分析
.pdf
ip、tcp、udp_报头
结构
体
分析
.pdf
《C语言基础》 之 第10章
结构
体
课程内容:为什么需要
结构
体
、定义一个
结构
体
类型、
结构
体
变量的声明和定义、sizeof测试
结构
体
变量字节、
结构
体
成员的普通访问方式、使用指针访问
结构
体
成员、
结构
体
嵌套、
结构
体
传参、
结构
体
数组。
国家垄断企业公司治理
结构
体
分析
报告文案.doc
国家垄断企业公司治理
结构
体
分析
报告文案.doc
MessageTable
结构
体
分析
工具2.02.rar
软件介绍: TI发布的一款TMS320LF2407DSP查询工具,用于查询MessageTable在FLASH中的位置,
结构
成员的大小、
结构
成员的内容,可自定义显示字
体
属性。
C++ 语言
64,691
社区成员
250,497
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章