大家好我正在学习C,并试图弄清楚如何通过命令控制台cmd运行它。我和Mingw一起安装了eclipse并将它们添加到路径中:
C:\ MinGW的\ BIN \; C:\ MinGW的\ MSYS \ 1.0 \ BIN
我在notepad ++上编写了这个程序,用于快速测试运行并将其保存到C:\ test.c以及文件夹C:\ Users \ Pikachu \ Music \ C代码,同时我试图弄明白:< / p>
#include <stdio.h>
int main()
{
printf("Hey, Buddy!\n");
return 0;
}
在我输入的cmd控制台上:
c:\>gcc test.c
并收到错误消息:
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/id.exe: cannot ope
n output file a.exe: Invalid argument
collect2.exe: error: ld returned 1 exit status
当我输入:
c:\>cd c:\Users\Pikachu\Music\c code
然后:
gcc test.c
它只是跳过一条线,好像什么也没发生,然后回到原点:c:\Users\Pikachu\Music\c code>gcc test.c
c:\Users\Pikachu\Music\c code>
我想知道是否有人知道发生了什么并且可以帮助我,如果我能从cmd看到“嘿,好友”,我会很高兴的!有没有人也知道为什么我从c:\得到运行它的错误消息,当我从Music \ c code \ test.c文件夹运行它时什么都没有,即使我应该运行相同的文件test.c?
我已经尝试过搜索并获取有关计算机如何无法链接到正确的dll的参考资料但是我不确定如何根据我的具体问题实现这一点。
当我试图在c:\中保存另一个文件时,我非常好奇地得到了一条消息,说我即使在完成此操作前5分钟也没有这样的权限。任何见解?
感谢您的帮助!
答案 0 :(得分:3)
当您在C源文件上运行gcc
时,它所做的就是生成一个可执行文件。我相信它默认为a.exe
,但我建议使用-o
选项命名:
gcc text.c -o test.exe
成功编译文件后,运行可执行文件向worls打招呼:
c:\Users\Pikachu\Music\c code> .\test.exe
至于你得到的第一个错误,可能与gcc无法在根c:
文件夹上创建输出可执行文件有关。我建议你编写一个用户拥有的文件夹,而不是系统文件夹。
顺便说一句,gcc支持许多其他选项。我强烈建议您使用-Wall
打开警告并选择要遵循的C标准版本(-std=c99
或-ansi
以及-pedantic
标记)。