对命令提示符,Visual Studio exe和文本文件感到困惑?

标题并没有真正做到这个主题正义。 它实际上非常简单,我的问题是。 我有一个用C语言编写的程序(下面的代码)。 我希望这个程序创建一个exe文件,该文件可以通过命令提示符控制台窗口运行,并且还将文本文件作为参数。 所以,长话短说; 我需要在CMD的命令行中说这个:

C:\ Users \ Username \ Desktop \ wrapfile.exe content.txt

我唯一的问题是让代码正确。 我想告诉Visual Studio:“您应该打开的文件在命令提示符窗口中作为参数给出,没有设置位置……”

我怎么做?

这是我的工作代码(虽然您将不得不在* fp定义中更改一些内容。

#include  #include  int main(int argc, char *argv[]) { FILE *fp; // declaring variable fp = fopen("c:\\users\\*Put you're PC username here*\\Desktop\\contents.txt", "rb"); // opens the file if (fp != NULL) // checks the return value from fopen { int i; do { i = fgetc(fp); // scans the file printf("%c",i); printf(" "); } while(i!=-1); fclose(fp); } else { printf("Error.\n"); } } 

感谢大家!

正如Ken所说,main方法的参数是从命令行传入的值。 Argc是’参数计数’而argv是’参数值’。 所以要打开从命令行传入的第一个参数,进行更改

 fp = fopen("c:\\users\\*Put you're PC username here*\\Desktop\\contents.txt", "rb"); // opens the file 

 fp = fopen(argv[1],"rb"); 

在尝试fopen输入之前,请确保执行错误检查(即argv [1]不为null)。 另外,在你的情况下,argv [0]的FYI将是你的可执行文件的名称。