FILE *fp; input_file(fp,"a.txt"); 哪里错了?

warning C4700: uninitialized local variable 'fp' used

你的文件指针fp没有初始化,一般这么初始化,看你具体的程序

 FILE *fp;


 if((fp=fopen("a.txt","w"))==NULL)

 {

  printf("打开文件错误,退出。");

  exit(1);

 }

追问

FILE *input_file(FILE *fp, char *file_name)
{
int vn_num;
int vt_num;
int i,tmp;
fopen_s(&fp,file_name, "r");
if(fp == NULL)
{
printf("Can't open %s!\n", file_name);
exit(-1);
}
我在input_file中写的。。。

追答

既然你要在函数中初始化,那么你可以在调用input_file(fp,"a.txt");之前赋初值

 

这样:

FILE *fp; 
fp = NULL;//反正后面会返回fp  
input_file(fp,"a.txt");

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-25
fp为初始化,可以采用fopen函数初始化
相似回答