目前我正在使用如下命令:
./ code< input.txt> output.txt的
有没有其他方法可以做到这一点?
答案 0 :(得分:0)
您可以使用文件I / O操作,fopen()
,fclose()
以及您用来从stdin
.... fscanf()
读取的任何文件版本, fgetc()
,fgets()
。
#include <stdio.h>
#include <stdlib.h>
int main () {
char str1[10], str2[10], str3[10];
int year;
FILE * fp;
fp = fopen ("file.txt", "w+");
fputs("We are in 2012", fp);
rewind(fp);
fscanf(fp, "%s %s %s %d", str1, str2, str3, &year);
printf("Read String1 |%s|\n", str1 );
printf("Read String2 |%s|\n", str2 );
printf("Read String3 |%s|\n", str3 );
printf("Read Integer |%d|\n", year );
fclose(fp);
return(0);
}
输出:
Read String1 |We|
Read String2 |are|
Read String3 |in|
Read Integer |2012|
如果要使代码足够通用以接受来自许多不同文件的输入,可以将文件名指定为命令行选项。