社区
C#
帖子详情
[11]关于STRUCT的存储问题
seakingii
2002-12-31 08:44:06
STRUCT是存在堆上的吧?
那如果STRUCT里有一个CLASS呢?
或者CLASS里有一个STRUCT,那这个STRUCT存在哪里?
...全文
32
4
打赏
收藏
[11]关于STRUCT的存储问题
STRUCT是存在堆上的吧? 那如果STRUCT里有一个CLASS呢? 或者CLASS里有一个STRUCT,那这个STRUCT存在哪里?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
seakingii
2002-12-31
打赏
举报
回复
小海?你说什么啊
xhan2000
2002-12-31
打赏
举报
回复
struct传值
seakingii
2002-12-31
打赏
举报
回复
>>>那如果STRUCT里有一个CLASS呢?
the object is on the heap, but the variable itself is on the stack
那STRUCT里存着一个指针?
还有,第一句我看不懂,惭愧
saucer
2002-12-31
打赏
举报
回复
>>>STRUCT是存在堆上的吧?
a struct is normally allocated on the stack or wherever its parent is
>>>那如果STRUCT里有一个CLASS呢?
the object is on the heap, but the variable itself is on the stack
>>>CLASS里有一个STRUCT,那这个STRUCT存在哪里?
struct is part of the class, it is on the heap
关于
struct
在内存中的
存储
结构及妙用
在网上看到关于
struct
结构体在内存中的存放位置,很多都摆出一个例子。
Struct
test{ char c; int b; double c; }; 问这个结构体占多大字节?如果改变一下 a,b,c的定义位置 ,又会怎样? 基本上答案都是神马16,24等,改变一下位置会使test的结构长度变化,因为是神马字节对其的原因。但经过测试,确实如此。原因已经有博主介绍很详细了,就不说了
关于
struct
的内存地址分配
问题
一直对内存地址的分配有些疑惑,故做实验研究一下: 先定义一个
Struct
,里面包含一个enum,一个short,一个char*存放字符串,一个short*存放short数组。 typedef
struct
My
Struct
{ enum MyEnum { enum1, enum2, enum3, enum4 }; short short1; char * char1; shor...
union嵌套
struct
的
存储
方式解析
struct
的
存储
方式 要搞清楚union嵌套
struct
的
存储
方式,首先必须清楚
struct
的
存储
方式。 转载:结构体在内存中的
存储
方式(转) - Maydaytyh - 博客园 举例说明:
struct
X { char a; int b; double c; }S1; 成员从低字节开始排,以4字节对齐的方式进行。因此S1
存储
方式如下: 注意:
struct
存储
方式需要满足对齐要求 union嵌套
struct
的
存储
方式 转载:union嵌套
struct
_Mister5ive的专栏-CSDN博
字节
存储
单元及
struct
内存分配
当今的计算机系统使用的基本上都是由18世纪德国数理哲学大师莱布尼兹发现的二进制系统。二进制数字系统中只有两种二进制数码——0和1。“bit”(比特)被创造出来代表“binary digit”,1bit代表一个二进制数位。 在有限范围内的可计量数值几乎都可以用二进制数码串组合表示,计算机的内存由数以亿万计的比特位
存储
单元(晶体管)组成。由于一个位只能表示二元数值,所以单独一位的用处不大。通常将许多位组成一组作为一个基本
存储
单位,这样就可以
存储
范围较大的值。
struct
和union的区别和
存储
方式
结构体
struct
是
存储
多个数据对象的内存块,这些对象不重叠。union是一块内存,用于
存储
多个数据对象,但只能
存储
其中最大的一个,因此在任何时候只能
存储
一个数据对象。 union和
struct
之间的主要区别在于 union 成员覆盖彼此的内存,因此 union 的 sizeof = 1 ,而
struct
成员一个接一个地分布在内存里(在可选的填充之间分布)。union也足够大以包含其所有成员,并且具有适合其所有成员的对齐方式。假设 int 只能
存储
在 2 个字节的地址并且是 2 个字节的宽度,而 l
C#
111,125
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章