在编写下面代码编译时出现 C3078:必须在没有初始化表达式的新表达式中指定数组大小的失败原因
想知道问题出现在哪,怎么解决
#include
#include
using namespace std;
struct student
{
string firstname;
string lastname;
char grade;
int age;
};
int main()
{
struct student stud;
cout << "How many students do you wish to catalog?" << endl;
int n;
cin >> n;
cin.ignore();
student* p = new student[];
for (int i = 0; i < n; i++)
{
cout << "Student #" << i + 1 << ":" << endl;
cout << "What is your first name?" << endl; getline(cin, p[i].firstname);
cout << "What is your last name?" << endl; getline(cin, p[i].lastname);
cout << "What letter grade do you deserve? " << endl;
cin >> p[i].grade;
cout << "What is your age?" << endl;
cin >> p[i].age;
p[i].grade += 1;
cin.ignore();
}
for (int i = 0; i < n; i++)
{
cout << "name=" << p[i].lastname << "," << p[i].firstname << endl;
cout << "grade=" << p[i].grade << endl; cout << "age=" << p[i].age << endl;
}
delete[] p;
}