我有錯誤,說沒有的重載函數「calMean」實例參數列表匹配匹配錯誤沒有重載函數「calMean」實例參數列表
這是我的代碼
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define FILE_NAME 20
#define LIST_SIZE 50
float calMean(RECORD list[], int count)
typedef struct
{
char *name;
int score;
}RECORD;
int main (void)
{
// Declarations
float mean;
FILE *fp;
char fileName[FILE_NAME];
RECORD list[LIST_SIZE];
char buffer[100];
int count = 0;
int i;
// Statements
printf("Enter the file name: ");
gets(fileName);
fp = fopen(fileName, "r");
if(fp == NULL)
printf("Error cannot open the file!\n");
while(fgets(buffer, 100, fp) != NULL)
{
if(count >= LIST_SIZE)
{
printf("Only the first 50 data will be read!\n");
break;
}
if(count < LIST_SIZE)
{
list[count].name = (char*) malloc(strlen(buffer)*sizeof(char));
sscanf(buffer,"%[^,], %d", list[count].name, &list[count].score);
printf("name is %s and score is %d\n", list[count].name, list[count].score);
count++;
}
for(i =0; i < (LIST_SIZE - count); i++)
{
list[count + i].name = 0;
list[count + i].score = 0;
}
}
printf("Read in %d data records\n", count);
mean = calMean(list, count);
fclose(fp);
return 0;
}
float calMean(RECORD list[], int count)
{
float tempMean;
int sum;
int i;
for(i = 0; i < count; i++)
sum += list[i].score;
tempMean = sum/count;
return tempMean;
}
這個錯誤發生在main函數調用calMean函數時,我是新來的結構,所以我認爲我在calMean函數調用中編寫列表參數列表的方式是錯誤的,有無論如何解決這個問題?我試圖計算結構中成員分數的平均值。
嘗試刪除'&''從&count'。 – Detheroc
還要注意,它聽起來像是在嘗試編譯C代碼,就好像它是C++一樣,因此C++錯誤消息 - 將.cpp後綴更改爲.c以獲得更有意義的特定於C的錯誤消息。 –
實際上,我以前做過,但它仍然顯示相同的錯誤,也是我的源文件是.c不是.cpp – user1763658