我之前问过这个问题,你让我提到错误,所以我现在会提到它们(我不知道如何继续我开始的最后一个线程,我所看到的只是一个"添加评论"按钮和一个"回答你的问题"按钮,所以我不得不纠正问题并再次问,抱歉):
我的问题如下:我正在使用visual studio 2010,我正在编写一个win32应用程序(不是控制台应用程序)。我需要知道如何从这个应用程序写入文件。
我包含了这些头文件:windows.h, stdlib.h, string.h和char.h
我写了一个非常简单的hello world应用程序,它运行得很好。
但是当我尝试包含iostream和fstream时在我的项目中,编译器给了我以下错误:
1>c:program files (x86)microsoft visual studio 10.0vcincludecstdlib(21): error C2039: 'abort' : is not a member of '`global namespace''
1>c:program files (x86)microsoft visual studio 10.0vcincludecstdlib(21): error C2873: 'abort' : symbol cannot be used in a using-declaration
1>c:program files (x86)microsoft visual studio 10.0vcincludecstdlib(24): error C2039: 'exit' : is not a member of '`global namespace''
1>c:program files (x86)microsoft visual studio 10.0vcincludecstdlib(24): error C2873: 'exit' : symbol cannot be used in a using-declaration
IntelliSense: the global scope has no "abort" c:program files (x86)microsoft visual studio 10.0vcincludecstdlib 21 13
IntelliSense: the global scope has no "exit" c:program files (x86)microsoft visual studio 10.0vcincludecstdlib 24 13
当我包含fstream.h时,我得到:
error C1083: Cannot open include file: 'fstream.h': No such file or directory c:usersuserdocumentsvisual studio 2010projectshelloworldhelloworldmain.cpp 5 1 helloworld
IntelliSense: cannot open source file "fstream.h" c:usersuserdocumentsvisual studio 2010projectshelloworldhelloworldmain.cpp 5 1 helloworld
iostream.h
也是一样为什么会出现这些错误?
在c++中,您应该使用<cstdlib>
而不是<stdlib.h>
, <cstring>
而不是<string.h>
(假设您指的是C风格字符串)。如果你想要c++ std::string,使用<string>
[不带.h
]。
你应该使用<fstream>
,而不是<fstream.h>
。
请检查您的:
#include "stdafx.h"
是第一个包含你的.cpp
文件。
在这个include后面写其他include:
#include "stdafx.h"
#include <iostream>
// ... and so on
int main(...) {
}
…这是Microsoft编译器经常犯的错误(参见c++ cout给出未声明的标识符)。
你可能把#include <iostream>
写成了#include "iostream"
也许这有帮助。尝试从
检查错误原因http://msdn.microsoft.com/en-us/library/et4zwx34%28v=vs.80%29.aspx