社区
C++ 语言
帖子详情
结构体分析
liangbina07
2013-05-04 12:23:00
typedef struct _T{
int nType;
int p[0];
};
sizeof(T) = ???;
上面结构的用法师合法的,就上面的这样设计有什么意义?
...全文
221
8
打赏
收藏
结构体分析
typedef struct _T{ int nType; int p[0]; }; sizeof(T) = ???; 上面结构的用法师合法的,就上面的这样设计有什么意义?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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中的重要
结构体
分析
国家垄断企业公司治理
结构体
分析
报告文案.doc
国家垄断企业公司治理
结构体
分析
报告文案.doc
c、c++
结构体
格式化(
结构体
反射)
c、c++如果在日志中查看某个结构字段信息,只能通过printf逐个格式化,工作量大; 该dll库通知pdb文件
分析
结构体
字段位置,并根据类型格式一个完整字符串,极大降低了开发者工作量。 1、可通过cdump\Release\cdumpTest.exe 查看执行结果 2、windows xp 以上系统均支持 3、基础版只提供32位,支持的类型为基础类型,高级版支持字符串、数组、
结构体
嵌套。
结构体
内存
分析
软件-
分析
内存及偏移量
分析
内存及偏移的工具。 可进行游戏内存及其他结构化内存的
分析
查询.
coderit666#CNote#25.
结构体
内存
分析
1
结构体
内存
分析
给
结构体
变量开辟存储空间和给普通开辟存储空间一样, 会从内存地址大的位置开始开辟给
结构体
成员开辟存储空间和给数组元素开辟存储空间一样, 会从所占用
C++ 语言
65,199
社区成员
250,520
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章