我有一些C代码,这是一个谜题.出于这个代码的原因,我想知道如何判断一个struct对象是在堆还是堆栈上?
没有使用malloc或创建对象calloc.他们以阵列的形式开始他们的生活.出于本文的目的,我将调用struct Emp.
Emp myEmp[6];
/* Each myEmp[?] item is populated in code */
Run Code Online (Sandbox Code Playgroud)
对象以各种方式进行排序和操作,在某些时候,对象被复制,然后传递给数组指针.副本通过memcpy.完成.然后将对象放入以下内容:Emp* emps_a[6].
对象来自副本并分配到上面的emps_a中.
int i;
for( i = 0; i < n; i++ )
{
emps_a[i] = myEmpsCopy + i;
}
Run Code Online (Sandbox Code Playgroud)
我不确定是否有一些或任何一个与我的问题有关.我从不需要免费()或记忆清理......我担心我对C不太了解.
非常感谢帮助.