1 / 37

上机环境介绍

上机环境介绍. 杨斌 2005-3-20. 上机时间地点. 地点: 西区电三楼 517 时间: 分两组,单双周,共六次 从第五周( 3 月 22 日)开始 每周二晚 6:00 - 10:00. 上机环境. 系统 win2000 编程环境: Borland C ++ 3.1 Visual C ++ 6. Borland C ++介绍. Project 的创建 编译和运行 BC 的调试. Project 的创建. 点击菜单中的 Project 选项下的 Open project... ; 如果有已经建好的* .prj 文件,可以点击 OK 打开 ;

waylon
Download Presentation

上机环境介绍

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 上机环境介绍 杨斌 2005-3-20

  2. 上机时间地点 • 地点:西区电三楼517 • 时间:分两组,单双周,共六次 • 从第五周(3月22日)开始 • 每周二晚6:00-10:00

  3. 上机环境 • 系统 win2000 • 编程环境: • Borland C++3.1 • Visual C++6

  4. Borland C++介绍 • Project的创建 • 编译和运行 • BC的调试

  5. Project的创建 • 点击菜单中的Project选项下的Open project... ; 如果有已经建好的*.prj文件,可以点击OK打开; 如果输入新命名会建立一个工程文件; 如下图:

  6. 编译和运行 • 编译 Compile->Compile Alt+F9 • 编译整个Project Compile->Make F9 • 运行 Run->Run Ctrl+F9 • 察看运行结果 Alt+F5

  7. BC的调试 • 设置断点 • 运行到光标处Go to Cursor • 单步跟踪 Step into / Step over • 察看/修改变量值Add Watch

  8. 设置断点 • 让光标停留在要设置断点的位置; 点击菜单中Debug->BreakPoints. . .添加新的断点; • 同样可以在菜单中的Debug-> BreakPoints. . . 选项中编辑删除断点。

  9. 跟踪 • 运行到光标处Go to Cursor F4 表示程序将执行到光标所在的可执行语句行上; • 单步跟踪 Step into F7 • Step over F8 注:Step Into选项表示每次只执行一行语句(单步执行),但如果当前代码是调用一个函数,那么Step Into表示进入该函数,全部函数语句执行完后返回,而Step Over则是跳出这个函数;

  10. 察看/修改变量值 • Add Watch CTRL+F7, 输入需要查看的变量名; • Delete Watch/Remove all watches, 删除观察变量 • Edit Watch, 编辑 观察变量

  11. 头文件问题 • 头文件找不到? • 检查Option->Directory环境设置的是否正确; 头文件必须在Option->Directory的目录中或当前目录中; 具体环境设置举例见DsLib使用说明

  12. 命名规范 • “匈牙利”法 : 主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。 例如int i, j, k; =>int iI, iJ, ik; “匈牙利”法最大的缺点是烦琐; • 建议使用有意义的单词命名; 例如:float value,oldValue,newValue; 而不是float a,b,c;

  13. 编码风格 • 使用良好的命名规则和编码风格。让自己的程序易于理解。 间隔与缩进;便于阅读。 1.统一TAB 2.统一注释

  14. 基本要求 • 各个函数以及类型定义之间分开,空一行; • 函数内变量声明和函数体分开,中间空一行;变量声明不能位于函数体之中; • 一条语句占一行,禁止将多条语句写在同一行上;不同类型变量声明不能位于同一行; • 每个代码块都用tab键进行缩进; • 适当的注释。

  15. 注释 • 文件头注释; /************************** 文件名:编写者:编写日期:简要描述:修改记录:**************************/

  16. 注释(续上) • 函数注释 /******************************* 函数名称:简要描述:// 函数目的、功能等的描述输入: // 输入参数说明,包括每个参数的 // 作用、取值说明及参数间关系,输出: // 输出参数的说明, 返回值的说明修改日志:*******************************/ • 对重要的变量和代码段可作单独的注释;

  17. 关于编程风格和设计规范详细内容请参考相关书籍关于编程风格和设计规范详细内容请参考相关书籍 http://staff.ustc.edu.cn/~yuzhang/ds/doc/rule/highquality.doc http://staff.ustc.edu.cn/~yuzhang/ds/doc/rule/CodeStyle.doc

  18. 关于函数 • 函数名,参数名命名规范;目的是让人看到函数名就知道函数的作用。 • 函数的长度,不要太长,太长的函数会影响到代码的可读性。分化成多个子函数。 • 同样的代码段重复时,建议使用函数,以提高可维护性,减少出错机会。

  19. 关于调试(Debug) • 不要等程序全写完一下就进入整体调试。这样很难搞清楚代码在何处出现问题; • “局部/单元调试”:对现有代码一个一个函数进行调试,缩小出错的空间,易于发现BUG。

  20. 调试方法 • 屏幕输出函数,如printf,编辑器通用的调试手段。 • 其他的针对使用的编辑器,学会使用简单的调试方法:单步跟踪,加断点,Watch变量..... 详细请参考介绍相关编辑器的书籍。

  21. 测试向量(批量测试) • 常规从scanf输入,printf输出; • 使用文件建立测试集,将结果输出至文件; • 输入输出重定向,使用“>”、“<”符号实现。 • 如果我们想输入 in_data_file文件中的数据,如 “abcd”时,输入命令a.exe <in_data_file 其中 a.exe是可执行文件名。 • 如果我们想把结果输出到 out_data_file 文件中,输入命令a.exe >out_data_file

  22. DsLib • DsLib库是基于BorlandC++3.1下的DOS开发环境作成的LIB库(目前已有移植到visual c的版本); • DsLib提供接口,用户通过调用接口函数可以对自己已经生成的一般数据结构(单链表、双链表、二叉树、图)在DOS的图形界面下形象的显示 • 帮助用户检查该数据结构是否创建正确

  23. DsLib使用 • 详细说明见DsLib文档 • DsLib包中包含一个Dslib的使用演示 • 使用时,首先将压缩包解开到一个目录中,在BorlandC中打开项目文件 • 重新设定相关路径、选项 • 编译、运行

  24. DsLib演示代码说明 • 程序头include “ds.h” • 根据需要调用显示函数 • void showList(const LinkList pHead) • void showList(const DuLinkList pHead) • void showBiTree(const BiTree pRoot) • void showGraph(const MGraph &G) • void showGraph(const ALGraph &G) • void showGraph(const OLGraph &G) • void showGraph(const AMLGraph &G) • 注意:调用DsLib库时数据结构的内部域名称必须与ds.h中声明的一致

  25. 实习一说明 • 实习一

  26. 要注意的问题 • 编程规范 • 空指针问题 :简单快速的定位(运行VC用DEBUG方式运行,出错后光标会停留在出错的位置); • 空指针引入(编码和debug时注意): • 指针初始化[->分配空间]->赋值; • 注意悬空引用,free后不能再使用; • 注意程序健壮性,对非法输入的处理

  27. 上机及实验报告评分标准 • 上机情况和实验报告分别占最后成绩的60%和40%。 • 上机: • 运行结果正确55%, • 程序的简洁性和易读性占15%。 • 异常处理和程序的稳定性15% • 代码风格15% (包括注释。考虑到时间和DOS环境,可以在试验报告中补全) • 实验报告:根据格式和内容的完整性酌情给分具体实验报告规范详见《数据结构题集》中相关章节。

  28. 结束! 更多信息见主页 http://mail.ustc.edu.cn/~Eshenkai/tutor/exp/exp.html

More Related