解决创客学院小黄书的错
嵌入式应用程序设计综合教程微课版
p13页,书上程序在写入正确文本之后会继续无限的写入乱码。
1 #include<stdio.h> 2 3 int main(){ 4 5 FILE *fps,*fpd; 6 char buf[128]; 7 if(NULL==(fps=fopen("copy.txt","r"))){ 8 perror("read ERROR"); 9 return -1; 10 } 11 12 if(NULL==(fpd=fopen("2.txt","w"))){ 13 perror("write ERROR"); 14 return -1; 15 } 16 int n=-1; 17 while(1){ 18 19 n=fread(buf,1,128,fps); 20 if(n<=0){ 21 break; 22 } 23 fwrite(buf,1,n,fpd); 24 } 25 fclose(fps); 26 fclose(fpd); 27 return 0; 28 29 30 }
p15页,错误:定义未使用变量,以及流文件名错误
1 #include<stdio.h> 2 #include<time.h> 3 4 int main(int argc,char *argv[]){ 5 //char buf[128]; 6 FILE *fps; 7 time_t t; 8 if(argc<2){ 9 printf("Usage:%s <file>\n",argv[0]); 10 return -1; 11 } 12 if(NULL==(fps=fopen(argv[1],"w"))){ 13 perror("open ERROR"); 14 return -1; 15 } 16 while(1){ 17 time(&t); 18 fprintf(fps,"%s\n",ctime(&t)); 19 sleep(1); 20 21 } 22 fclose(fps); 23 return 0; 24 }