C语言关于 fprintf 的问题
#include<stdio.h>FILE *fp=NULL;
void creat();
void write();
char name[40];
struct abc
{
char yourwrite[1000];
};
int main(void)
{
int a;
while(1)
{
printf("==>Menu<==\n");
printf("---------->1.创建一个文件\n");
printf("---------->2.对此文件写入\n");
scanf("%d",&a);
switch (a)
{
case 1:creat(); break;
case 2:write(); break;
default:printf("Error\n");
}
}
}
void creat()
{
printf("[请符合windows文件名规则,否者将无法创建]\n");
printf("请输入要创建的文件名:");
scanf("%s",name);
fp=fopen(name,"a+");
}
void write()
{
if((fp=fopen(name,"a+"))==NULL)
{printf("你还未创建文件,请选择菜单一\n\n");return;}
int b;
printf("fprintf()函数\n");
printf("其函数原型:int fprintf(FILE *fp,char *fmt,...)\n");
printf("请输入你要写入的内容:");
struct abc INPUT;
scanf("%s",INPUT.yourwrite);
fprintf(fp,"%s",INPUT.yourwrite);
}
为什么这个程序,执行了fprintf,却不能写入东西???