#include <stdio.h>
#include <stdlib.h>
struct kisyou {
int month ;
int day ;
int hour ;
double kion ;
} ;
#define MAXFILENAME 100
#define ARRAYSIZE 1000
int readfile(char filename[], struct kisyou kisyoudata[])
{
int size;
FILE *fp ;
int month, day, hour ;
double data;
if ((fp = fopen(filename, "r")) == NULL) {
fprintf(stderr, "Error: File Open\n") ;
exit(1) ;
}
size = 0;
while (fscanf(fp, "%d,%d,%d,%lf", &month, &day, &hour, &data) != EOF) {
kisyoudata[size].month = month ;
kisyoudata[size].day = day ;
kisyoudata[size].hour = hour ;
kisyoudata[size].kion = data ;
size++ ;
if(size >= ARRAYSIZE) {
fprintf(stderr, "Error: 配列の数が不足\n");
exit(2);
}
}
fclose(fp) ;
return size;
}
int main(void)
{
char filename[MAXFILENAME];
double kion[ARRAYSIZE];
struct kisyou kisyoudata[ARRAYSIZE] ;
int size;
int i;
fprintf(stderr,"データファイル名の入力:");
scanf("%s",filename);
size = readfile(filename, kion);
for (i=0; i<size; i++){
printf("%d月%d日%d時 %.1f\n",kisyoudata[i].month, kisyoudata[i].day,kisyoudata[i].hour, kisyoudata[i].kion) ;
}
return 0;
}
r2r.c:60:19: error: expected expression
size = readfile(char filename[], struct kisyou kisyoudata[]);
^
r2r.c:60:36: error: expected expression
size = readfile(char filename[], struct kisyou kisyoudata[]);
^
r2r.c:71:3: error: expected identifier or '('
return 0;
^
r2r.c:72:1: error: extraneous closing brace ('}')
}
sizeを返すプログラムなのですが構造体のところがよくわかりません