注册 登录
编程论坛 C++教室

结构体内存分配

王连峰 发布于 2019-12-07 07:22, 2239 次点击
typedef struct _ref
{
   char szData1[32];
   char szData2[19];
   char szData3[10];
   char szData4[50];
   char szData5[2]
   char szData6[30];

}ref;
各位同志,请问上边的结构体变量中定义的字符数组内存是否是连续的?谢谢了🙏
6 回复
#2
雪影辰风2019-12-07 09:15
数组的内存分配永远是连续的
#3
雪影辰风2019-12-07 09:17
不信你可以定义一个指针变量,然后将数组第一单元的地址附给指针,输出指针间接存放的变量,然后指针++(这里不是指指针内地址+1,而是跳过一个完整的单元,到达下一个单元)
#4
王连峰2019-12-07 09:31
我是说结构体里面的这6个字符数组的内存也是连续的?
#5
雪影辰风2019-12-07 09:33
每个数组是中的单元是连续的,不同的数组当然不会连续
#6
雪影辰风2019-12-07 09:33
也就是说这几个数组内存可能连续可能不连续,因为首地址是随机的
#7
王连峰2019-12-07 10:06
嗯,感谢
1