首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

结构体内存分配有关问题

2012-03-30 
结构体内存分配问题问题如下:我现在定义两个结构体A,Btypedefstruct_A{floatxfloatyfloatz}Atypedefst

结构体内存分配问题
问题如下:
我现在定义两个结构体A,B

typedef   struct   _A
{
    float   x;
    float   y;
    float   z;

}A;

typedef   struct   _B
{
      A*   var;

}B;

我的目的是达到这种效果,即:B.var是一个数组,但是维数事先不能确定的,其中数组中元素包含x,y,z
那么我如何给这个变量分配内存,并初始化每个元素为0呢?请大家给以解惑。


[解决办法]
正如楼上所说的...
typedef struct _B
{
A* var;

}B;

int MAX_LENTH;
B temp;

scanf( "%d ",&MAX_LENTH);
temp.var=(A*)malloc(MAX_LENTH*sizeof(A));
memcpy(temp.var, '0 ', MAX_LENTH*sizeof(A));

热点排行