У меня есть проект для моего класса, который в основном читает информацию о 3 студентах (у каждого студента есть 3 курса и 5 тестов, а также информацию, такую как их имя, ssn, номер телефона и т. Д.) Из входного файла, сохраняет входные данныев массивах, затем выводит информацию в выходной файл.Проект должен быть разделен на 6 функций, не включая основную функцию.
Я могу успешно прочитать и сохранить информацию, но когда я перехожу к функции validateData, мой массив не передается вфункция, поэтому он не сможет ее проверить.Эта ошибка также происходит во всех других функциях.Я полагаю, что это, вероятно, ошибка с прототипами функций, так как это то, что меня больше всего смущает.
Я попытался изменить параметры прототипа на (string [], int [], double []) потому что у меня есть 3 разных массива, один для строк, один для целых и один для двойных.Но это не сработало.Я также попробовал то же самое, за исключением того, что без этих «[]», все еще не работал, я думаю, что ошибка говорит о том, что компилятор не смог преобразовать double * в double или наоборот.
//Declaring global constants
const int STUDENTS = 3;
const int NONNUMERIC_INFO = 9;
const int NUMERIC_INFO = 2;
const int COURSES = 3;
const int TESTS_and_CNG = 6;
//Above main function, Function prototype
void validateData(string [], int [], double []);
//Inside main function, Function call
validateData();
//Declaring Arrays (inside of a different function called inputData)
string nonNumeric1[STUDENTS][NONNUMERIC_INFO];
int numeric1[STUDENTS][NUMERIC_INFO];
double numeric2[STUDENTS][COURSES][TESTS_and_CNG];
//Under main function, Function definition
void validateData(string, int, double)
{
//A bunch of if statements that i will soon turn into for loops, but will save you guys the trouble of reading them all, as its not important to the question.
}
Я ожидаю, что массивы будут переданы в функцию, однако это не происходит, и я получаю сообщение об ошибке "error: слишком мало аргументов для функции" void validateData (std :: __ cxx11 :: string *, int *, double *) '"Я не знаю, что пытается сказать сообщение об ошибке.