Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c++;指向字符数组的动态stuct指针_C++_Arrays_Dynamic - Fatal编程技术网

C++ c++;指向字符数组的动态stuct指针

C++ c++;指向字符数组的动态stuct指针,c++,arrays,dynamic,C++,Arrays,Dynamic,我无法将内存动态分配给指向结构的指针内的字符数组。 这是一项作业,必须使用此结构大纲: struct Student { char *namePtr; unsigned int score; }; 这是我遇到麻烦的部分 /*************************** * takes value from temporary value and puts into dynamic allocated Student array ***************************

我无法将内存动态分配给指向结构的指针内的字符数组。 这是一项作业,必须使用此结构大纲:

struct Student
{
char *namePtr;
unsigned int score;
};
这是我遇到麻烦的部分

/***************************
 * takes value from temporary value and puts into dynamic allocated Student array
 ***************************/
bool updateStructPtr(Student **info, unsigned int index, char *name, unsigned int score)
{
try
{
    info[index]->namePtr = new char [strlen(name)+1];
    if(DEBUG) cout << "size for dynamic char: " << strlen(name)+1 << endl << endl;
    //copy char array into new array
    strcpy(info[index]->namePtr, name);
    info[index]->score = score;
}
catch (bad_alloc & param)
{
    info[index]->namePtr = NULL;
    return false;
}
return true;
}
/***************************
*从临时值中获取值并放入动态分配的学生数组中
***************************/
bool updateStructPtr(学生**信息,无符号整数索引,字符*名称,无符号整数分数)
{
尝试
{
info[index]->namePtr=newchar[strlen(name)+1];

if(DEBUG)coutSO并不是为了帮助你完成家庭作业


话虽如此,你老师的指导是非常详细和正确的。你必须使用
newstudent
newstudent[]
在某个时刻实际更新传递给您的Student**
信息
,以便添加您应该添加的新Student结构。

我猜在调用函数之前,不会分配
Student
实例。您必须通过
new分配
Student
的新实例学生
并将其存储到
信息
中的
索引

info[index] = new Student;