这是我的代码:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int n,i,a[40];
char file_name[100];
FILE *file;
printf("enter the file name\n");
scanf("%s",&file_name);
printf("enter the size\n");
scanf("%d",&n);
if((file=fopen(file_name,"rb"))==NULL)
{
printf("cant open a file\n");
return;
}
fread(a,sizeof(int),n,file);
for(i=0;i<n;i++)
{
printf("%s",a[i]);
}
}
答案 0 :(得分:7)
变化:
scanf("%s",&file_name);
为:
scanf("%s", file_name);
您还需要更改:
printf("%s",a[i]);
为:
printf("%d", a[i]);
(当你接触它时,将void main
更改为int main
)。
答案 1 :(得分:1)
scanf("%s",&file_name);
您不必将指针传递给file_name
,因为它已经是指针。将此行更改为:
scanf("%s", file_name);