【问题标题】:where to call main function (dev c++) [closed]在哪里调用主函数(dev c++)[关闭]
【发布时间】:2017-12-12 17:34:47
【问题描述】:

我对 C++ 很陌生。我有一个标准的 dev c++ windows 应用程序 winapi,但它在 stackoverflow 上没有得到很好的格式化。 所以在这里你可以看到它: see here

但我的问题是,我应该在哪里执行主要功能?如果我只是创建一个新的int main(),则窗口根本不会出现。 我应该在WinMain() 函数中这样做吗?

有什么建议吗?

编辑:我刚刚发现 dev c++ 没有编译器。

【问题讨论】:

  • 如果您正在制作控制台程序,则入口点是 main,如果是 Windows 应用程序,则入口点是 WinMain。除非您不遗余力地更改入口点,否则该函数会自动为您调用。你应该学会在这里发布代码,一个过期的链接对以后看这个问题的人没有帮助。
  • @RetiredNinja 我必须创建一个新函数还是使用现有函数?
  • 如果您从一个空文件开始您的程序,然后编写代码,您需要提供适当的功能。如果您要复制/粘贴,则取决于这些内容是什么。

标签: c++ winapi dev-c++


【解决方案1】:

请注意,Dev-C++不是编译器,而是IDE(即,美化的source code editor)。您的编译器可能是 GCC(free software 编译器)的某种变体,例如 MINGW。

在标准 C99(或 C11)或 C++11 中,(命令行)程序的入口点是 main。

你需要定义这样一个函数,运行时系统(例如Unix上的crt0)会调用它。

您不应该调用 main 函数。它的首选签名应该是

int main(int argc, char**argv);

您可能应该在某个终端仿真器中运行您的程序。 Here 是 argc 和 argv 的一些属性(由 C 或 C++ 标准强加)。

任何其他入口点(例如WinMain)可能是特定于 Windows 的,并且可能需要一些特定的编译器选项。

您将使用 gcc 编译 C 程序,并使用 g++ 编译 C++ 程序。我强烈建议使用-Wall -Wextra -g 标志到gcc 或g++ 编译器来启用所有警告和调试信息。您可能想要使用一些build automation 工具,例如GNU make。

对于 C++ 中的 GUI 程序,我会推荐 Qt(它是 free software,并且是多平台的)。

【讨论】:

  • 不知何故我让他使用 g++.exe 进行编译。编译结果:Compilation results... -------- - Errors: 0 - Warnings: 0 - Output Filename: C:\Users\Sam\Desktop\Project1.exe - Output Size: 1,83782863616943 MiB - Compilation Time: 6,01s
猜你喜欢
  • 2011-11-23
  • 2011-05-10
  • 2011-04-03
  • 2015-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-19
  • 1970-01-01
相关资源
最近更新 更多