今天在使用VC6运行程序的时候出现了几个新的error,以前没有碰到,总结一下,希望对其他同学有帮助:
?
1.Error spawning cl.exe?
?
错误分析:
?
这个error一般在点击“Compile”或者“Build”后出现的:“Compiling... ,Error spawning cl.exe”,“cl.exe”是VC使用的真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,所以出现这个错误实际上是因为cl.exe路径设置出错造成的,这个默认路径是在程序安装好之后自动设置的,是没有问题的,但是有时候在安装一些软件的时候会自动修改这个路径值,导致运行的
vc的时候找不到这个路径。
?
解决办法:
?
打开vc界面点击VC“TOOLS(工具)”—>“Option(选择)” —>“Directories(目录)”重新设置“Excutable Fils、Include Files、Library Files、Source Files”的路径。
如果你是按照初始路径安装vc6.0的,路径应为:?
executatble files: ?
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin ?
C:\Program Files\Microsoft Visual Studio\VC98\BIN ?
C:\Program Files\Microsoft Visual Studio\Common\TOOLS ?
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT ?
?
include files: ?
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\
MFC\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE ?
?
library files: ?
C:\Program Files\Microsoft Visual Studio\VC98\LIB ?
C:\Program Files\Microsoft Visual Studio\VC98\
MFC\LIB ?
?
source files: ?
?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC ?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC ?
?
如果你装在其他盘里,则仿照其路径变通就行。关键是microsoft visual studio\ 后面的东西要相同。
?
2.error C2871: 'std' : does not exist or is not a namespace
?
当我在vc6中运行程序:
#include
using namespace std;
int main(){
? ? cout<<"hello"<
? ? return 0;
}
出现了error C2871: 'std' : does not exist or is not a namespace这个错误!
?
错误分析:
?
C++有两个不同版本的头文件:
和。引入namespace这个概念以前编译器用的是#include ,而引入namespace的概念以后引用std名字空间的头文件则变成了。是比较老的C++的头文件的版本,而namespace是98年才被加入C++标准的,所以里面是没有std这么个命名空间的,当使用 时,相当于在c中调用库函数,使用的是全局命名空间,也就是早期的c++实现。头文件则没有定义全局命名空间,使用时必须使用namespace std才能正确使用cout。
?
vc6.0支持这个两个版本. 不过现在都用了 ?
?
解决办法:
?
#include
using namespace std;
或者是?
#include 即可。
?