【问题标题】:My helloworld for C is compiling but the .exe file isn't running?我的 helloworld for C 正在编译,但 .exe 文件没有运行?
【发布时间】:2017-07-18 21:32:22
【问题描述】:

我编写了这个简单的 C Hello World 程序,但我不知道为什么它不能在命令行中运行?我正在使用根据站点说明下载的 MinGW C 编译器,并且我正在使用 Sublimetext 作为我的文本编辑器。我编译的程序很好,似乎 b/c .exe 文件出现了,但是当我尝试运行该文件时,它会打印出来

这个问题看起来很基础,如果这个问题是业余的,那我就不好了,刚开始尝试学习 C。

这是我的 Sublime text 代码。

#include <stdio.h>

int main (){
    printf("Hello World\n");
    return 0;
}

【问题讨论】:

  • 我也试过输入helloworld,但这也没用
  • 请输入.\helloworld。默认情况下,PowerShell 不在当前目录中运行可执行文件。 (查看建议消息。)
  • 非常感谢!^^ @Bill_Stewart 就是这样,由于某种原因无法弄清楚该消息
  • 以后,请从您的终端复制/粘贴到您的问题中。专家用户不可能在图像中搜索预期的警告或错误文本。使用编辑对话框左上角工具箱中的{} 工具对选定文本保持正确的“编程”格式。很高兴您找到了解决问题的方法。你读过stackoverflow.com/help/how-to-askstackoverflow.com/help/dont-askstackoverflow.com/help/mcve吗?这些将帮助你写出好的 Q(除了屏幕截图,这是一个很好的,所以继续努力!)。祝你好运。
  • 投反对票,因为解决方案实际上列在错误消息中。

标签: c powershell command-line mingw


【解决方案1】:

您需要在 PowerShell 中指定可执行文件的目录。您的替代方法是通过 cmd.exe 启动程序。

.\helloworld.exe

C:\Users\Zanel\OneDrive\documents\code\C\helloworld.exe

.代表当前目录。

【讨论】:

  • 您甚至可以在 powershell 中键入 ./helloworld - 就像在 UNIX 上一样 :)。注意正斜杠,没有.exe。
  • @ddbug 仅当这是目录中唯一的 helloworld.* 文件时,否则我不确定行为是如何定义的。
  • 通常在一个目录中不会有两个同名文件 :) 但是你可以有一个名为 'helloworld.exe' 的文件和一个名为 'helloworld' 的文件而没有分机。否则这将是一个奇怪的文件系统。除非在 PATHEXT 中指定,否则不会执行带有其他 ext(helloworld.c 等)的文件。
猜你喜欢
  • 2014-07-14
  • 1970-01-01
  • 2023-04-02
  • 2015-11-24
  • 2013-05-31
  • 1970-01-01
  • 1970-01-01
  • 2020-07-23
  • 2016-04-09
相关资源
最近更新 更多