#include <stdio.h>#include <stdlib.h>#include <string.h>int main(void){ char str[256]={NULL}; int n=0; char *filename_1="c:\\a.txt"; \\文件位置 char *filename_2="c:\\b.txt"; FILE *pfile_1=NULL; FILE *pfile_2=NULL; if(!(pfile_1=fopen(filename_1,"a"))) \\打开文件,没有就新建 { printf("error"); exit(1); } fgets(str,256,pfile_1); \\问题就是在这里,str并没有数据写入。 printf("%s",str); fclose(pfile_1); \\关闭文件 if(!(pfile_2=fopen(filename_2,"a"))) { printf("error"); exit(1); } n=strlen(str); for(int i=0;i<n;i++) fputc(str[i],pfile_2); fclose(pfile_2); return 0;}