只是为了刷新我的概念,我正在研究并行数组。一种用于存储整数数据,另一种用于存储字符数据,即 GPA。
问题像魅力一样编译,但结果不正确,它正确显示学生 ID,但不显示 GPA。
- 简单的
cin
工作正常 - 我真的不知道如何使用
cin.get
和cin.getline
使用指针。 - 在函数
enter
中,我想获取两个字符长的字符串(加上一个终止空字符)。
代码清单:
#include <iostream>
#include <cstring>
using namespace std;
void enter(int *ar, char *arr, int size);
void exit(int *a, char *yo, int size);
int main()
{
const int id = 5;
const char grade = 5;
int *student = new int[id];
char *course = new char[grade];
cout << "\n";
enter(student, course, 5);
exit(student, course, 5);
}
void enter(int *ar, char *arr, int size)
{
for(int i = 0; i < size; i ++)
{
cout << "Student ID: " << i+1 << "\n";
cin >> *(ar+i);
cin.ignore();
cout << "Student Grade: " << i+1 << "\n";
cin.get(arr, 3);
}
}
void exit(int *a, char *yo, int size)
{
for(int i = 0; i < size; i ++)
{
cout << "ID And Grade Of Student #" << i+1 << ":";
cout << *(a+i) << "\t" << *(yo+j) << endl;
}
}