我需要读取从命令行打开的.txt文件中的整数,如下所示:
myprogram < input.txt
我不能使用scanf,因为它不会读取任何内容,也不能使用fscanf,因为我没有打开程序中的文件。获取文件中字符串行的作用,但没有像“getint”那样读取整数行。
这就是我的文件:
5 //number of following words
word1
word2
word3
word4
word5
答案 0 :(得分:1)
<
重定向表示法意味着input.txt
的内容将重定向到程序的标准输入。这意味着您应该能够使用scanf()
来读取文件内容(或从标准输入读取的任何其他函数)。
答案 1 :(得分:0)
#include <stdio.h>
int main(){
int n;
scanf("%d", &n);
scanf("%*[^\n]");//skip comment
char word[n][16];
int i;
for(i = 0;i < n; ++i){
scanf("%15s", word[i]);
}
for(i = 0;i < n; ++i){
printf("%s\n", word[i]);
}
return 0;
}