无法通过cmd运行C程序

时间:2014-06-21 21:21:27

标签: c cmd

大家好我正在学习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分钟也没有这样的权限。任何见解?

感谢您的帮助!

1 个答案:

答案 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标记)。