代码无法编译

Code won't compile

本文关键字:编译 代码      更新时间:2023-10-16

我正在使用Microsoft Visual Studio Express 2013,并编写了以下代码

#include <iostream>
using namespace std;
int main()
{
    cout << "Hello world!";
    return 0;
}

我收到以下错误

1 智能感知:PCH 警告:找不到合适的标头停止位置。 未生成智能感知 PCH 文件。

2 智能感知:预期声明 错误 3 错误 C1010:查找预编译标头时文件意外结束。您是否忘记将"#include "stdafx.h"添加到您的源中?

我尝试添加"#include"stdafx.h",但这没有区别。我已经勾选了预编译的标头,如果我取消选中它,当我尝试构建时会收到以下消息。

'ConsoleApplication6.exe' (Win32): Loaded 'C:UsersJustinDesktopConsoleApplication6DebugConsoleApplication6.exe'. Symbols loaded.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64ntdll.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64kernel32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64KernelBase.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64msvcp120d.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64msvcr120d.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64guard32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64user32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64gdi32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64lpk.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64usp10.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64msvcrt.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64advapi32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64sechost.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64rpcrt4.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64sspicli.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64cryptbase.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64version.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64imm32.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64msctf.dll'. Cannot find or open the PDB file.
'ConsoleApplication6.exe' (Win32): Loaded 'C:WindowsSysWOW64fltLib.dll'. Cannot find or open the PDB file.
The program '[4872] ConsoleApplication6.exe' has exited with code 0 (0x0).

stdafx.h的问题最好通过不使用预编译标头来解决,测试程序不需要它们。

"当您尝试构建时",您不会收到其他消息列表。这些是运行时消息 - 您的文件已成功构建并运行(退出代码0成功)。只是程序立即终止。

您可以向程序添加类似以下内容以等待一些输入:

#include <iostream>
using namespace std;
int main()
{
  cout << "Hello world!";
  cin.get();  // this will wait for a single character press
  return 0;
}

你应该遵循一个好的教程(或参加一个课程)来熟悉Visual Studio - 你需要能够区分Intellisense"错误",编译器错误,链接器错误和运行时输出消息,以完成任何严肃的编程工作。