C++调试环境的建立(仅适合初学者,高手莫入)

王朝c/c++·作者佚名  2006-01-10
宽屏版  字体: |||超大  

近日,发现光用C#还是不行,毕竟许多老代码都是C++等其他语言写的,所以决定学C++。

作为初学者,连编译环境等都不了解,问了一些高手,他们推荐N多编译器,我晕了(云里来雾里去的,一点不过份)。

由于我用的是WINXP,VS2003.Net,虽然VS里面可以直接调试,但类似:#include <iostream.h>的语句需要修改成:#include <iostream>,还要加上:using namespace std;感觉不爽,所以我想在DOS下调试,虽然那个黑乎乎的窗口是有点难看,但我想那是学习的好途径。

后来,看到网上一篇文章http://www.jjhou.com/article99-10.htm,一看作者,竟是侯捷大侠的!

于是依葫芦画瓢,首先通过搜索计算机文件,找到CL.EXE及MSPDB60.DLL文件所在位置,注意所在目录中带有“VC98\BIN”“COMMON\MSDev98\”字样,找到我电脑中在:C:\Program Files\Microsoft Visual Studio\VC98等下面,于是写了一个批处理文件,暂时就取名VC.bat吧。其内容如下:

set PATH=C:\Program Files\Microsoft Visual Studio\VC98\BIN;C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\BIN

set INCLUDE=C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE;C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE

set LIB=C:\Program Files\Microsoft Visual Studio\VC98\LIB;C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB

我用记事本建立它,并把它保存在c:\下,这样做只是为了方便调用而已。

然后,我将我的C++程序,取名叫Factor.cpp:

#include <iostream.h>

int Factor(int,int&,int&);

void main()

{

/*-------------------------------*/

int number, squared, cubed, error;

cout << "Enter a number(1-30):";

cin >>number;

error = Factor(number, squared, cubed);

if(error)

{

cout<<"Error encountered!\n";

}

else

{

cout <<"Number:"<<number<<endl;

cout <<"Squared:"<<squared<<endl;

cout<<"Cubed:"<<cubed<<endl;

}

}

int Factor(int n, int& rSquared, int& rCubed)

{

if(n>30 || n<1)

{

return 1;

}

rSquared = n * n;

rCubed = n * n * n;

return 0;

}

为了调试方便,也存在C:\目录下。

然后,Start-Run,Open栏中输入cmd,OK进入DOS状态,然后键入c:回车(如果当前已在C盘中则不用此步),再cd\回车进入C根目录下,键入VC回车(这步是调用我刚才编写的VC.bat批处理程序)。这时看到屏幕上显示我刚才编写的批处理的内容,代表它已被执行。

接下来,键入:CL factor.cpp回车,C++编译器为我们自动编译factor.cpp程序(在C:\目录下,我们可以看到,它自动生成了factor.obj和factor.exe两个文件)。

最后,就是测试我的运行文件factor.exe了。键入factor回车,可以看到:

Enter a number(1-30):提示,这时可以输入:1至30以内的整数,比如20,结果:

Number:20

Squared:400

Cubed:8000

这正是程序的要求,一切OK。

如果使用VCVARS32.BAT而不是自行编写批处量程序,那么,请将VCVARS32.BAT文件COPY到你的调试目录下(这里是C:\),这样相对比较方便。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有