【发布时间】:2014-12-04 10:04:26
【问题描述】:
当我运行程序时,它会立即进入输入标记部分并完全跳过 getline 部分。此外,当我使用 cin 时,它工作正常,但我显然无法阅读全名。我究竟做错了什么? 这是具有输入和输出功能的结构:
struct student
{
string name;
float marks;
void getinfo()
{
cout<<"Enter name:\n"; getline (cin , name); //This part gets skipped
cout<<"Enter marks:\n"; cin>>marks; cout<<endl;
}
void showinfo()
{
cout<<"\nName: "<<name;
cout<<"\nMarks: \n"<<marks;
}
};
这是我称之为的函数:
void stack::push()
{
if(top==4)
cout<<"Overflow!\n";
else
{
top++;
S[top].getinfo();
}
}
最后,这是类堆栈:
class stack
{
student S[5];
int top;
public:
stack() { top=-1;}
void push();
void pop();
void display();
};
【问题讨论】: