你能把更小的结构放入更大的内存块吗?

标签 c memory data-structures malloc

我有这样的结构:

typedef struct
{
int data[10];
} small_structure;

和这段代码:

small_structure *s_struct;
void * chunk;

chunk = malloc(1000);
s_struct = chunk;

做这样的事情可以吗?忽略这是在浪费内存这一事实。

最佳答案

是的,分配比您需要的更多的内存总是合法的,只要有那么多内存可用。

关于你能把更小的结构放入更大的内存块吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6905836/

相关文章:

ios - 检查用户手机上是否有足够的可用空间来录制视频

c - 如何知道套接字何时完成读取

html - 从 HTML 表单中使用 c 程序获取数据

c - 堆栈帧组装 - 堆栈上的缓冲区/垃圾空间和参数位置 - Ubuntu x64

algorithm - 数据结构类似数组但支持删除

algorithm - 范围最小查询、动态数组、区间树、treap

python - Python数据结构的内存大小

c - 优雅地交换c中的链表节点

c - 使用 GTK_SIGNAL_FUNC 传递多个值

performance - 在 x86 上成功的非对齐访问的实际效果是什么?