当我读入一个文件然后输出到一个新文件时,输出是乱码,我试图找出原因。
我正在尝试运行以下代码
#include<stdio.h>
#include<stdlib.h>
int main(int argc ,char *argv[])
{
int c;
FILE *of;
FILE *f;
of=fopen(argv[2],"w");
f=fopen(argv[1],"r");
while(c=getc(f)!=EOF)
putc(c,of);
fclose(of);
fclose(f);
return 0;
}
但是当我按如下方式运行它时
$./a.out temp new
wheretemp
是一个现有文件,其内容是:
this is a temp file
并且new
在运行程序之前不存在
但是现在当我 cat 时,new
它的内容都搞砸了,为什么会这样?