c++ - 动态分配一个全局数组,该数组位于动态分配的结构数组中

标签 c++ pointers dynamic struct

<分区>

我知道我的问题看起来很困惑,但请看一下我的代码:

struct name{
   string first
   string last
};
struct course_grade{
   name Name;
   string idNum;
   double *testArrayPtr;
   double average;
   char grade;
};
int num;
int num_test;
course_grade *gradeArr = new course_grade[num]; //this works, no hit of error shown

(*gradeArr).testArrayPtr= new  double[num_test];// error!

我正在尝试动态分配一个数组。问题是这个数组在我动态分配的另一个结构数组中。 这是我第一次在 Stack 中提问,感谢您的帮助!

最佳答案

这个有效:

struct name{
   string first
   string last
};
struct course_grade{
   name Name;
   string idNum;
   double *testArrayPtr;
   double average;
   char grade;
};

int main(int argc, char* argv[]) 
{
    int num = 1;
    int num_test = 1;
    course_grade *gradeArr = new course_grade[num]; 
    (*gradeArr).testArrayPtr = new  double[num_test];


    return 0;
}

我假设你还没有初始化 numnum_test

关于c++ - 动态分配一个全局数组,该数组位于动态分配的结构数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40221885/

相关文章:

c++ - vector 分配困惑

c++ - 为什么衰减到数组参数的指针似乎不适用于 sizeof()?

c - 指针可以接受什么处理并且仍然有效?

javascript - 如何在 javascript on() 函数中指定动态元素?

Javascript:动态函数名称

Android:创建自定义 View 并将其动态添加到布局

c++ - 如何获取类中成员函数的地址

c++ - 具有取决于整数模板的参数的构造函数的模板参数推导技巧

c++ - 获取 [枚举成员?] 的封闭类型

c - 在 C 的过程中更新指针