从C中的stdin获取文件路径

问题描述 投票:0回答:1

我正在尝试将文件传递给我的程序,但是它总是出现错误,无法打开文件。

我的命令是:(我在桌面路径上,正在使用ubuntu)

./out </usr/share/dict/words >out.txt 2>out2.txt

已创建输出文件,但文件输入似乎为空。我得到的文件路径为:

char *infile;
scanf("%s", infile);
printf("file: %s\n", infile);

我也尝试过:

fscanf(stdin, "%s", infile);

没有任何变化。另外,我必须如上所述进行输入,我知道

c io command stdout stdin
1个回答
0
投票

char *infile只是一个指针,不会为字符串分配空间,因此不会保存输入。尝试类似char infile[50]的操作。如果需要,请增加尺寸。

© www.soinside.com 2019 - 2024. All rights reserved.