2011年最开始学习C++,当时用的Visual C++ 6.0。一转眼想捡起来的时候都已经更新到Microsoft Visual Studio 2017了。。。本着用新不用旧的思想,没找到破解的VS 2015,最后就用了VS 2010。
然而用了新版本后,按照之前的教材连句简单的 hello world也编译不过。。。故在这里记录下遇到的问题和使用的解决方法。
一.include<iostream.h> VS 2010
报错fatal error C1083: 无法打开包括文件:“iostream.h”: No such file or directory
原因在于,早期的vs版本,如VC6.0,用的还是老版本的C++标准库,例如iostream.h,C++的标准输入输出流是定义在这个头文件里的。然而标准C++98定义后,C++的输入输出流定义在iostream.h里,故以前的头文件需要做部分修改。
#include<iostream.h>
void main()
{
cout<<"hello, world.\n"; //向屏幕输出hello, world后换行
}
改为:
#include<iostream>
using namespace std;
void main()
{
cout<<"hello, world.\n"; //向屏幕输出hello, world后换行
}
即可顺利编译,其中,using namespace std;
是指明接下来的程序中使用std空间。它是C++新标准中有的,解决多人编写大程序时名字冲突问题。比如A B两个班都有叫张三的人,你要使用A班的张三,必然要先指名是A班这个名字空间(namespace),然后你对张三的所有命令才能达到你的预想,不会叫错人。
如果不写这句,你写cin和cout时候就必须这样写,否则找不到cin或者cout。
std::cin>>a;
std::cout<<a<<std::endl;
二、程序运行后输出框秒退
直接F5时,输出结果秒退,此时采用的是启动调试。
ctrl+F5,输出结果停留,此时采用的是开始执行不调试。
参考链接