int main()
{
char a[100][100];
int i = 0, k = 0;
FILE* file = fopen( "A:/input.txt", "r" );
if( file == NULL ){
perror( "Error opening file !\n" );
} else {
while( ! feof( file )){
fscanf( file, "%d;%s\n", &i, a[i] );
}
}
for( ; k < i; ++k ){
printf( "%d -> %s\n", k, a[k] );
}
return 0;
}
我有这段工作代码,我试图将它实现为这样的函数:
int reader(char b[20], char *a[100][100], int *i){
int j = 0;
FILE* file = fopen(b, "r" );
if( file == NULL ){
perror( "Error opening file !\n" );
} else {
while( ! feof( file )){
fscanf( file, "%d;%s\n", j, a[j] );
}
}
*i = j;
return 0;}
并从 main 拨打电话:
char a[100][100];
int i = 0;
reader("Type.txt", &a, &i);
但是当我使用该功能时,代码在 fscanf 调用时崩溃。任何想法我怎样才能使这项工作或我怎样才能创建一个函数从文件中逐行读取并以这种形式创建一个数组:array[0] = firstline、array[1] = secondline 等。