- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
控制台应用程序设计与调试2
控制台应用程序设计
在学习面向对象的C++之前,必须学习标准C++,这时采用控制台应用程序进行练习。控制台应用程序创建一个窗口模拟DOS进行输入输出。
下面是一个控制台应用程序实例,该程序要求用户从键盘输入3个整数,然后按照从小到大的顺序在屏幕上输出。
一个控制台应用程序工程
进入VC环境后,选择File|New菜单,弹出New对话框,在Projects页面选择Win32 Console Application工程类型,在Project name 编辑框输入工程名,路径E:\\ Ex1_1,如图所示,按OK按钮。
在随后的Application Step 1 of 1中选择an empty project,按Finish按钮出现Project Information框,显示创建了一个空的控制台应用程序,且没有任何文件被添加到新工程中程序的编辑、编译、建立、执行1. 选择File|New菜单项,在New对话框的Files页面选择C++ Source File,输入文件名.cpp,选中Add to Project复选框,如图,按OK按钮,打开了源文件编辑窗口输入以下源代码。#include iostream.h
void main(){
int a,b,c;
图1.2 Win 32 Console Application Step 1 of 1
图1.3 New Project Information 窗口
int max,min;
cout请输入三个不等整数:\n;
cinabc;
if(ab){ max = a; min = b; }
else { // B行
max = b; min = a; }
if(cmax) coutc\tmax\tmin\n;
else if(cmin) coutmax\tmin\tc\n;
else coutmax\tc\tmin\n;
return;
}
2. 对于已经存在的源文件,选择Project|Add to Project| Files…菜单项,在随后打开的插入文件对话框中选择待添加文件,按OK添加进工程。
3. 选择Build|Compile菜单项,即可编译源文件.cpp,系统会在Output窗口给出Error(错误)信息以及Warning(警告)信息。当所有Error后,得到目标文件(.obj)。语法错误(Error):鼠标双击错误信息可跳转到错误源代码处进行修改,一个语法错误可能引发系统给出很多条Error信息,因此,发现一个错误并修改后最好重新编译一次,以便提高工作效率警告信息(Warning)处理:一般是触发了C\C++的自动规则,如将一个浮点型数据给整型变量赋值,需要系统将浮点型数据自动转换为整型,小数部分会丢失,因而系统给出警告信息。警告信息不会影响程序执行,可以通过强制类型转换去掉警告信息。Build|Build菜单项链接建立工程的EXE文件,得到可执行文件.exe。这时编译器可能会给出链接错误。
链接错误(Linking Error)处理:链接时可能产生错误,原因可能是所需要的库文件或目标文件缺少,或程序中调用的Extern 函数没有定义等,只要补充相应文档再重新建立即可。选择Build|Execute菜单项,执行工程文件,会出现一个类似DOS操作系统的窗口,光标闪烁等待输入,按要求输入三个不等的整数后按Enter键,屏幕上由到输出这三个整数如图。程序的运行程序,可能会发现程序没有编译错误,也能执行,但执行的结果不对,此时,除了仔细分析源程序,还可借助调试工具进行跟踪调试。
例如,在例1_1程序中B行处出错,在else后多加一个分号:
… else ; { max = b; min = a; }
用88, 45, 67这组数据测试,发现输出结果为67 45 88,结果不对。下面介绍调试过程。
首先在源程序中可能出现错误的行上设置断点,方法是将光标移至该行,然后按F9键,或选择工具栏上的手形按钮(再按一次取消断点),此时该行左侧出现一个红色圆点,断点设置成功,如图1.6在A行设置断点。
选择Build | Start Debug | Go…菜单命令(也可选择Build工具栏上的Go图标),程序执行到断点处停止,这时选择View|Debug WindowsWatch和Variables两个菜单项,打开监视变量窗口观察变量值§1菜单的View菜单介绍),分析查找出错原因。max = a; min = b;}后,仍然执行了{max = b; min = a;}。当程序执行到箭头所指处时,max=23, min=88,如图1.6,与预期结果不相符,说明程序的流程有问题。此时再仔细分析源程序,发现问题出在else后多余的分
文档评论(0)