C++ C++;switch语句中的函数未执行

C++ C++;switch语句中的函数未执行,c++,function,switch-statement,C++,Function,Switch Statement,您的nCount未初始化。由于此变量用于这两个函数中(假设它指的是总计数),您可以将其声明为全局变量: nCount=0; 每次添加新条目时,可以按如下方式递增计数器: nCount++; 另一个让代码实际工作的建议是: student[i++]=addStudent(); 其中,i是初始化为0的计数器。您的addStudent()函数返回一个对象,您将其丢弃。将其存储在您创建的对象数组中: Students student[256];

您的
nCount
未初始化。由于此变量用于这两个函数中(假设它指的是总计数),您可以将其声明为全局变量:

nCount=0;
每次添加新条目时,可以按如下方式递增计数器:

nCount++;
另一个让代码实际工作的建议是:

                 student[i++]=addStudent();
其中,
i
是初始化为
0
的计数器。您的
addStudent()
函数返回一个对象,您将其丢弃。将其存储在您创建的对象数组中:

          Students student[256];

此外,由于您在几乎所有函数中都使用了上述函数,因此最好将其声明为全局函数,而不是在每个函数中重新声明。

问题不在
开关中

addStudent()
没有将学生添加到任何列表或数组中。此外,由于其返回类型为
Students
,您应该将其添加到
Students
的任何数组中。由于您没有存储任何数据,因此显示将不会显示任何内容

另一个问题是
nCount
。您在中使用它进行比较,而不初始化它。此外,要保持
nCount
同步,请将其设置为全局、用作指针或使用返回来处理它

问题也出现在
displaytroster()
中。您将
Students
数组声明为
Students student[256];
并且您在未初始化的情况下使用它。此外,如果初始化,它将不具有作为输入提供的数据


注意:再次坐下来阅读您的代码,还有很多错误。请尝试可视化数据的存储方式以及代码的行为,然后开始编写代码。

您是否尝试过调试它?它是否输入了
case
语句?它是否输入了函数?发生了什么?是否发现异常或无
case
?“三个函数中有两个不起作用”-预计人们会发布带有特定问题的最少代码,包括他们使用的输入、观察到发生的情况、这与他们期望/希望发生的情况有何不同,以及他们对差异的不理解。我建议您花时间添加跟踪语句ala
std::cout