0
#include<iostream>
using namespace std;
struct teacher 
{
    char name[20];
    int id;
    char grade[20];
    char qual[20];
    char heighest[20];  
};


int main()
{
    teacher t1,*ptr_t1;
    ptr_t1=&t1;
    cout<<"please Enter your Name \n";
    gets(ptr_t1->name);
    cout<<"please Enter your grade\n";
    gets(ptr_t1->grade);
    cout<<"please Enter your ID \n";
    cin>>ptr_t1->id;
    cout<<"please Enter your Qualification \n";
    gets(ptr_t1->qual);
    cout<<"please Enter your heighest \n";
    gets(ptr_t1->heighest); 
    system("pause");
    return 0;
}

这是我的代码 gets(ptr_t1->qual) 不接受任何值,我的程序跳转到 gets(ptr_t1->heighest) 我遇到了问题

4

1 回答 1

0

你不应该cingets. 相反,您始终可以使用cin

#include<iostream>
using namespace std;

struct teacher 
{
    char name[20];
    int id;
    char grade[20];
    char qual[20];
    char heighest[20];  
};


int main()
{
    teacher t1,*ptr_t1;
    ptr_t1=&t1;

    cout << "please Enter your Name \n";
    cin >> ptr_t1->name;
    cout << "please Enter your grade\n";
    cin >> ptr_t1->grade;
    cout << "please Enter your ID \n";
    cin >> ptr_t1->id;
    cout << "please Enter your Qualification \n";
    cin >> ptr_t1->qual;
    cout << "please Enter your heighest \n";
    cin >> ptr_t1->heighest; 

    system("pause");
    return 0;
}
于 2020-05-02T21:32:58.253 回答