【发布时间】:2019-09-26 11:03:24
【问题描述】:
我在内部结构中定义了包含指针成员的嵌套结构。例如,如何将值传递给由 6 个元素组成的数组的指针成员。它正在编译但不工作。
如何给这个指针传值?
typedef struct
{
int Nx;
int Nu;
float *x_initial;
}typeparam;
typedef struct
{
typeparam *param;
}typeram;
int main()
{
float x0[6]={-2.0,0.0,2.0,0.0,0.0,0.0};
typeram *ram, ram1;
ram= &ram1;
for (int i=0; i<6; i++)
{
ram->param->x_initial[i] = x0[i];
}
for (int i=0; i<6; i++){
printf("%1.6f\n",ram->param->x_initial[i] );
}
return 0;
}
【问题讨论】:
-
怎么不工作了?请阅读How to Ask
-
ram有什么用?为什么不直接使用ram1? -
并考虑结构中的指针(例如
ram1.param)指向的位置。你确定要到处使用指针吗? -
ram->param指向哪里?
标签: c pointers initialization structure