C++ 如何在C++;
我想打印动态数组索引大小。C++ 如何在C++;,c++,dynamic-arrays,C++,Dynamic Arrays,我想打印动态数组索引大小。 “InputData”函数可生成三个动态数组。我想在main函数中获取数组索引大小 例如,int arr[10];->>索引大小为10 我想用另一种方法来获得大小,而不是制作一个新的数组来记忆它 这是我的代码 struct Subject { char SubName[30]; char Grade[10]; float GPA; }; struct Student { char StdName[30]; Subject* Su
“InputData”函数可生成三个动态数组。我想在main函数中获取数组索引大小 例如,int arr[10];->>索引大小为10 我想用另一种方法来获得大小,而不是制作一个新的数组来记忆它 这是我的代码
struct Subject {
char SubName[30];
char Grade[10];
float GPA;
};
struct Student {
char StdName[30];
Subject* Sub;
};
int SubNum;
Student Std[3];
Subject* Sub;
void InputData(Student* stu)
{
for(int i=0; i<3;i++{
cin >> SubNum;
stu[i].Sub = new Subject[SubNum];
}
}
int main()
{
InputData(Std);
cout<< //want to print out dynamic array index size
}
struct主题{
char子名称[30];
炭级[10];
浮动GPA;
};
结构学生{
char StdName[30];
主题*Sub;
};
内亚微米;
学生性病[3];
主题*Sub;
无效输入数据(学生*stu)
{
对于(int i=0;i>SubNum;
stu[i].Sub=新科目[SubNum];
}
}
int main()
{
输入数据(Std);
库特
如何在C语言中获得动态数组索引大小++
我假设你指的是数组的大小
通常无法“获取”动态数组的大小。您需要做的是将大小存储在某个位置。例如,在变量中。然后,您可以通过访问存储的对象来“获取”大小
事实上,这就是您所做的。您将大小存储在变量SubNum
中,您可以这样打印大小:
std::cout << SubNum;
std::在使用new[]
时,您是否必须自己跟踪块的大小(向Student
结构添加另一个成员)。更好的方法是使用STL容器,如std::vector
。这能回答您的问题吗?谢谢您的回答。存储大小意味着使用数组?@M.K。我添加了更多详细信息。哦,我现在明白了。谢谢您的帮助。