[英]How to run (and compile) a C file with arguments with gcc?
我认为这是一个非常简单的问题,但我对命令行的经验较少。 我有一个我想运行的旧 C 程序。 它显示以下文本:
/* This is a stand-alone program intended to generate ... It is called*/
/* as follows: */
/* */
/* tw_r2fft N > outputfile.c */
/* This program will generate the ... array 'w' */
/* and output the result to the display. Redirect the */
/* output to a file as shown above. */
我试过(在cmd中):
gcc tw_r2fft.c 1024 > outputfile.c
gcc 的错误信息是:
gcc: 1024: No such file or directory
我尝试了一些变化,但没有成功。
我相信文档意味着您应该首先编译和构建程序,然后用参数调用可执行文件。 因此,在您的情况下,您需要执行以下操作:
gcc tw_r2fft.c -o tw_r2fft
./tw_r2fft 1024 > outputfile.c
尝试将 C 程序编译为可执行二进制文件:
gcc -o tw_r2fft tw_r2fft.c
然后使用正确的命令行参数启动二进制文件:
./tw_r2fft 1024 >outputfile.c
然后你也可以编译和运行你的输出文件:)
gcc -o test outputfile.c
./test
您需要先编译程序,然后再运行它
gcc tw_r2fft.c -o tw_r2fft
./tw_r2fft 1024 > outputfile.c
该注释是对如何使用已编译程序的说明。 您需要先构建它。
最简单:
make tw_r2fft
./tw_r2fft 1024 > outputfile.c
下一个最简单的:
gcc -o tw_r2fft tw_r2fft.c
./tw_r2fft 1024 > outputfile.c
这一行将编译你的程序
gcc tw_r2fft.c -o tw_r2fft
gcc 是编译器,tw_r2fft.c 是你的文件名。 -o 是一种更改输出文件名的方法。 您可以在没有 -o 的情况下编译程序,但默认情况下编译器会将您的输出文件保存为 ./a.out
这一行执行你的输出文件并传递一个命令行参数,即 1024,整个程序的输出被保存到 outputfile.c
./tw_r2fft 1024 > outputfile.c
仍然需要帮助
http://www.cyberciti.biz/faq/compiling-c-program-and-creating-executable-file/
你可以试试这个:
gcc tw_r2fft.c -o tw_r2fft && ./twr2fft 1024 > outputfile.c
或不带 -o 选项:
gcc tw_r2fft.c && ./a.out 1024 > outputfile.c
在一行中编译并运行一个程序:
gcc source.c -o sourceBinary; ./sourceBinary
分号表示 bash 中的结束语句/中断。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.