Visual Studio 2008 速成版中的 C++ 第一个程序

Posted

技术标签:

【中文标题】Visual Studio 2008 速成版中的 C++ 第一个程序【英文标题】:C++ 1st program in visual studio 2008 express edition 【发布时间】:2012-05-19 07:03:18 【问题描述】:

我已经用 C++ 编写了一个基本代码

#include <iostream>
using namespace std;
void main()

    cout <<"its my programm";

当我编译它时,cmd 行会出现一秒钟并终止显示。它在调试窗口中向我显示了这个输出。

'while.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll'
'while.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll'
'while.exe': Loaded 'C:\Windows\winsxs\x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30729.1_none_bb1f6aa1308c35eb\msvcp90d.dll'
'while.exe': Loaded 'C:\Windows\winsxs\x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30729.1_none_bb1f6aa1308c35eb\msvcr90d.dll'
The program '[1480] while.exe: Native' has exited with code 0 (0x0).

帮我解决这个问题。

【问题讨论】:

你忘了问问题。您的调试输出看起来完全正确。您的输出出现在程序的控制台中,但是当您的程序结束时,它的控制台也结束了。 您的主文件无效。它必须返回int @Cicada:MS Visual C++ 接受void 作为main 函数的返回类型。 @MD.Unicorn 这不是标准的,它是 Microsoft 扩展。 因此visual-c++ 标签,我猜。无论如何,这是微软对标准的较小罪行之一:-) 【参考方案1】:
#include <iostream>
using namespace std
int main() 
    cout << "Hello World";
    cin.get();
    return 0;

这应该可以。控制台在您查看程序之前退出。使用 cin.get() 将保持程序运行,直到您按下回车键。

在相关说明中,您的 main() 函数确实应该是 int 而不是 void。我很确定有些编译器不允许使用 void main()。

【讨论】:

【参考方案2】:

那是因为你的控制台在你看到输出之前就关闭了。

尝试使用F10 逐步执行您的程序。或者在 return 之前放置一个锁定语句。

另外,main 不应该返回 int

【讨论】:

【参考方案3】:

试试这个:

#include <iostream>
using namespace std;
void main()

    cout <<"its my programm";
    cin.get();

然后您必须按 Enter 关闭控制台窗口。

【讨论】:

以上是关于Visual Studio 2008 速成版中的 C++ 第一个程序的主要内容,如果未能解决你的问题,请参考以下文章

从 Visual Studio 2008 升级到 Visual Studio 2010 速成版

Visual Studio Team System 2008数据库版中是否提供了代码分析工具?

Visual Studio 2010 Express 中的 LESS 支持

Visual Studio数据库版中的“数据库项目”和“服务器项目”之间有什么区别?

如何在 Visual Studio Team 版中按个人请求查看负载测试报告

Visual Studio 2008 Express 是不是支持 t4?