我不知道如何解决这些错误。我写了整个代码,并试图看看它是否是括号的问题,但也没有帮助。我不知道它是什么线但是我相信它就是这个功能。
错误LNK2019:函数_main中引用的未解析的外部符号“int __cdecl read_file_in_array(int(* const)[3])”(?read_file_in_array @@ YAHQAY02H @ Z) 致命错误LNK1120:1个未解析的外部
我相信这个与括号有关
#include <iostream>
#include <fstream>
using namespace std;
int read_file_in_array(int exam[100][3]);
double calculate_total(int exam1[], int exam2[], int exam3[]); // function that calcualates grades to see how many 90,80,70,60
//void display_totals();
double exam[100][3];
int read_file_in_array(double exam[100][3])
{
ifstream infile;
int exam1[100];
int exam2[100];
int exam3[100];
infile.open("grades.txt");// file containing numbers in 3 columns
if(infile.fail()) // checks to see if file opended
{
cout << "error" << endl;
}
int num, i=0,j=0;
while(!infile.eof()) // reads file to end of line
{
for(i=0;i<100;i++) // array numbers less than 100
{
for(j=0;j<3;j++) // while reading get 1st array or element
infile >> exam[i][j];
infile >> exam[i][j];
infile >> exam[i][j];
cout << exam[i][j] << endl;
{
if (! (infile >> exam[i][j]) )
cout << exam[i][j] << endl;
}
exam[i][j]=exam1[i];
exam[i][j]=exam2[i];
exam[i][j]=exam3[i];
}
infile.close();
}
return 0;
}
double calculate_total(int exam1[],int exam2[],int exam3[])
{
int calc_tot,above90=0, above80=0, above70=0, above60=0,i,j, fail=0;
int exam[100][3];
calc_tot=read_file_in_array(exam);
for(i=0;i<100;i++)
{
exam1[i]=exam[100][0];
exam2[i]=exam[100][1];
exam3[i]=exam[100][2];
if(exam[i][j] <=90 && exam[i][j] >=100)
{
above90++;
{
if(exam[i][j] <=80 && exam[i][j] >=89)
{
above80++;
{
if(exam[i][j] <=70 && exam[i][j] >=79)
{
above70++;
{
if(exam[i][j] <=60 && exam[i][j] >=69)
{
above60++;
{
if(exam[i][j] >=59)
{
fail++;
}
}
}
}
}
}
}
}
}
}
return 0;
}
int main()
{
int go,go2,go3;
int exam[100][3];
int exam1[100];
int exam2[100];
int exam3[100];
go=read_file_in_array(exam);
go2=calculate_total(exam1,exam2,exam3);
//go3=display_totals();
cout << go,go2,go3;
return 0;
}
答案 0 :(得分:6)
您的函数原型声明:
int read_file_in_array(int exam[100][3]);
但是函数本身被定义为:
int read_file_in_array(double exam[100][3])
确保在两者中使用相同的类型。