打印到命令行中给出的输出文件
答
您只需要从输入参数中读取文件的名称。
参数存储在主数组argv
中。就像这样:
#include <stdio.h>
int main (int argc, char *argv[])
{
if (argc != 2) /* argc should be 2 for correct execution */
{
/* We print argv[0] assuming it is the program name */
printf("usage: %s filename", argv[0]);
}
else
{
// We assume argv[1] is a filename to open
FILE *file = fopen(argv[1], "w");
// do something
}
}
+0
如果文件没有在命令行中给出尚未创建,它会工作吗? – name
+0
是的,因为当您在写入模式下打开文件时。如果它不存在,它将被创建。 – granmirupa
+0
你可以添加一个快速语句打印“ABC”文件。当我运行我的代码它说该文件不存在。 – name
[试试这个(https://stackoverflow.com/documentation/c/1285/command-line-arguments/4435/printing-the-command-line-arguments#t=201610101909574672974) – user3386109