Download presentation
Presentation is loading. Please wait.
Published byNabhi Patel Modified 5年之前
1
C++上机指导 菜单功能 项目和项目工作区 运行多文件程序 程序调试 Pengyu Yang 结束 2019年2月24日星期日
2
§1 菜单功能 VC++ 主菜单栏:Alt键激活 File 文件:对文件和项目进行操作 Edit 编辑:方便快捷地编辑文件内容
§1 菜单功能 VC++ 主菜单栏:Alt键激活 File 文件:对文件和项目进行操作 Edit 编辑:方便快捷地编辑文件内容 View 查看:改变窗口和工具栏的显示方式 Insert 插入:创建和添加项目及资源 Project 工程:对项目的操作 Build 编译:编译、连接、调试、运行程序 Tools 工具:选择或制定开发环境中的实用工具 Windo 窗口:对文档窗口的操作 Help 帮助:提供帮助信息 Pengyu Yang 返回 结束 2019年2月24日星期日
3
1、File 文件:对文件和项目进行操作 菜单命令 功能描述 New 新建 创建一个新项目或文件 Open 打开 打开已有的文件
Close 结束 关闭当前被打开的文件 Open Workspace 打开工作区 打开一个已有的项目 Save Workspace 保存工作区 保存当前项目 Close Workspace 关闭工作区 关闭当前项目 Save 保存 保存当前文件 Save As 另存为 将当前文件用新文件名保存 Save All 全部保存 保存所有打开的文件 Page Setup 页面设置 文件打印的页设置 Print 打印 打印当前文件内容或当前选定的内容 Recent File 新近的文件 选择打开最近的文件 Recent Workspace 新近的工作区 选择打开最近的项目 Exit 退出 退出 结束 2019年2月24日星期日
4
2、Edit 编辑:方便快捷地编辑文件内容 菜单命令 功能描述 Undo 撤消 撤销上一次操作 Redo 重复 恢复被撤销的操作
Cut 剪切 将当前选定的内容剪切掉,并移至剪贴板中 Copy 拷贝 将当前选定的内容复制到剪贴板中 Paste 粘贴 将剪贴板中的内容粘贴到光标当前位置处 Delete 删除 删除当前选定的对象或光标位置处的字符 Select All 全部选择 选定当前活动窗口中的全部内容 Find 查找 查找指定的字符串 Find in File 查找文件 在指定的多个文件(夹)中查找字符串 Replace 替换 替换指定的字符串 Goto 定位 将光标移到指定位置处 Bookmark 书签 在光标当前位置处定义一个书签 Advanced 高级 高级编辑操作,如将指定内容进行大小写转换 Breakpoints 断点 在程序中设置断点 List Members 显示“词语敏感器”的“成员列表”选项 Type Info 显示“词语敏感器”的“类型信息”选项 Parameter Info 显示“词语敏感器”的“参数信息”选项 Complete Word 显示“词语敏感器”的“词语自动完成”选项 结束 2019年2月24日星期日
5
3、View 查看:改变窗口和工具栏的显示方式
菜单命令 功能描述 Class Wizard 建立类向导 弹出类编辑对话框 Resource symbols 显示和编辑资源文件中的资源标识符(ID 号) Resource Includes 修改资源包含文件 Full Screen 全屏幕显示 切换到全屏显示方式 Workspce 工作区 显示并激活项目工作区窗口 Output 输出 显示并激活输出窗口 Debug Windows 调试窗口 操作调试窗口 Refresh 更新 刷新当前选定对象的内容 Properties 属性 编辑当前选定对象的属性 结束 2019年2月24日星期日
6
4、Insert 插入:创建和添加项目及资源
菜单命令 功能描述 New Class 新建类 插入一个新类 New Form 新建形式 插入一个新的表单类 Resource 资源 插入指定类型的新资源 Resource Copy 资源拷贝 创建一个不同语言的资源副本 File As Text 在当前光标位置处插入文本文件内容 New ATL Object 新建 ATL 对象 插入一个新的 ATL 对象 结束 2019年2月24日星期日
7
5、Project 工程:对项目的操作 菜单命令 功能描述 Set Active Project 设置活动工程 激活指定的项目
Add To Project 添加工程 将组件或外部的源文件添加在当前项目中 Dependencies 从属性 编辑当前项目的依赖关系 Settings 设置 修改当前编译和调试项目的一些设置 Export Makefile 输出制作文件 生成当前可编译项目的(.MAK)文件 Insert Project into Workspace 插入工程到工作区 将项目加入到项目工作区中 结束 2019年2月24日星期日
8
6、Build 编译:编译、连接、调试、运行程序
菜单命令 功能描述 Compile 编译 编译 C 或 C++ 源代码文件 Build 构建 生成应用程序的 .EXE 文件 Rebuild All 重建全部 重新编连整个项目文件 Batch Build 批构件 成批编连多个项目文件 Clean 清洁 清除所有编连过程中产生的文件 Start Debug 开始调试 给出调试的一些操作 Debugger Remote Connection 调试程序远程连接 做远程调试连接的各项环境设置 Execute 执行 执行应用程序 Set Active Configuration 放置可远行配置 设置当前项目的配置 Configuration 配置 设置、修改项目的配置 Profile 简档 为当前应用程序设定各选项 结束 2019年2月24日星期日
9
7、Tools 工具:选择或制定开发环境中的实用工具
菜单命令 功能描述 Source Browser 来源浏览器 浏览对指定对象的查询及其相关信息 Close Source Browser File 结束来源浏览器文件 关闭浏览信息文件 Customize 定制 定制菜单及工具栏 Options 选择 改变开发环境的各种设置 Macro 宏 进行宏操作 Record Quick Macro 记录高速宏 录制新宏 Play Quick Macro 播放高速宏 运行新录制的宏 结束 2019年2月24日星期日
10
8、Windo 窗口:对文档窗口的操作 菜单命令 功能描述 New Windows 新建窗口 再打开一个文档窗口显示当前窗口内容
Split 拆分 文档窗口切分 Docking View 还原窗口 浮动显示项目工作区窗口 Close 结束 关闭当前文档窗口 Close All 全部结束 关闭所有打开过的文档窗口 Next 前窗 激活并显示下一个文档窗口 Previous 后窗 激活并显示上一个文档窗口 Cascade 层叠窗口 层铺所有的文档窗口 Tile Horizontally 横向平铺窗口 多个文档窗口上下依次排列 Tile Vertically 纵向平铺窗口 多个文档窗口左右依次排列 Windows 窗口资源 文档窗口操作 结束 2019年2月24日星期日
11
9、Help 帮助:提供帮助信息 菜单命令 功能描述 Contents 帮助目录 按“文件夹”方式显示帮助信息 Search 搜索
用查询方式获得帮助信息 Index 索引 按“索引”方式显示帮助信息 Use Extension Help 应用扩展帮助 选中此命令,按F1或其它帮助命令将显示外部的帮助信息;若此命令没有选中,则启动 MSDN Keyboard Map 快捷键图表 显示所有的键盘命令 Tip of the Day 开始时的提示 显示“每天一贴”对话框 Technical Support 技术支持 用微软技术支持的方式获得帮助 Microsoft on the Web Microsoft 在线 微软网站 About Visual C 关于创天VC++ Visual C++ 的版本、注册等信息 返回 结束 2019年2月24日星期日
12
§2 项目和项目工作区 一个 Windows 应用程序通常有许多源代码文件、菜单、工具栏、对话框、图标等资源文件,这些文件都将纳入应用程序的项目中 通过对项目工作区的操作,可以显示、修改、添加、删除这些文件 项目工作区可以管理多个项目 Huxuying 返回 结束 2019年2月24日星期日
13
一、项目基本概念 在 Windows 环境下,大多数应用程序除了许多源代码文件外,还包含菜单、工具栏、对话框、图标等, Visual C++ 称它们为资源,这些资源通常用资源文件保存起来;另外,还要包含应用程序代码源文件编连时所需要的库文件、系统 DLL 文件等 有效组织这些文件并维护各源文件之间的依赖关系是应用程序最先要达到的目的, Visual C++ 中的项目就起这样的作用 项目作为工作区中的主要内容已加入集成开发环境中,不再需要自己来组织这些文件,只需要在开发环境中进行设置、编译、连接等操作,就可创建可执行的应用程序文件或 DLL 文件 在Visual C++ 中,项目中所有的源文件都是采用文件夹方式进行管理的,它将项目名作为文件夹名,在此文件夹下包含源程序代码文件(.cpp 、.h)、项目文件(.dsp)、项目工作区文件(.dsw)以及项目工作区配置文件(.opt),还有相应的Debug(调试)或 Release(发行)、Res(资源)等子文件夹 在项目工作区窗口包含 ClassView 页、FileView 页 结束 2019年2月24日星期日
14
二、ClassView 页 项目工作区窗口的 ClassVier 页用以显示项目中的所有各类信息
单击项目名前的符号 “+” 或双击图标显示其中的所有类名 双击类名前的图标,则直接打开并显示类定义的头文件 单击类名前的符号 “+”,则显示该类中的成员函数和成员变量 双击成员函数前的图标,则在文档窗口中直接打开源文件并显示相应函数体代码 用蓝绿色图标表示成员变量 用紫色图标表示成员函数 存取权 紫色方块表示公共的 紫色方块和一把钥匙表示私有的 紫色方块和一把锁表示保护的 结束 2019年2月24日星期日
15
三、FileView 页 项目工作区窗口的 FileVier 页可将项目中的所有文件(C++ 源文件、头文件、资源文件、Help 文件等)分类显示 每一类文件在 FileVier 页中都有自己的目录项,例如所有的C++ 源文件都在 Source File 目录项中。你不仅可以在目录项中移动文件,而且还可以创建新的目录项以及将一些特殊类型的文件放在该目录项中 返回 结束 2019年2月24日星期日
16
§3 运行多文件程序 单文件程序是指一个程序只由一个源文件组成 多文件程序是指一个程序中至少包含两个文件 设程序由二个文件组成:
甲.cpp、乙.cpp 其编译连接和运行方法如下 Huxuying 返回 结束 2019年2月24日星期日
17
第1步 创建一个新的项目文件 方法:文件/新建/工程/Win32 Console Application
在工程选框中输入所指定的项目名,如:excise 在位置选框中输入要建立项目文件所需的源文件所在的路径,如:D:\ 单击 “确定” 命令按钮 单击 “完成” 命令按钮 结束 2019年2月24日星期日
18
第2步 单击:工程/添加工程/新建/文件 如果是已经存在的文件,单击:工程/添加工程/Files 编译、链接、执行
选择 C++ Source File 或 C++ Header File 在文件选框中输入文件名 接着在编辑窗口中输入源程序,如: 乙.cpp文件: #include <iostream.h> static int s=1; void product(int n) { s*=n; cout << "product: s=" << s << endl; } 甲.cpp文件: #include <iostream.h> #include <conio.h> void product(int n); static int s=1; void main() { int n=2; do{ product(n); cout << "main: s=" << s << endl; }while( _getch()!=27 ); } 如果是已经存在的文件,单击:工程/添加工程/Files 把 .cpp、.h 文件依次添加到该项目中 编译、链接、执行 结束 2019年2月24日星期日
19
方法: 文件/打开工作区/打开项目文件夹 excise/excise.dsw 文件
结束 2019年2月24日星期日
20
在程序中包含自定义的头文件: 方法1:#include "自定义的头文件.h " 方法2:工具/选择/目录/增加一个include搜索路径
自定义头文件 在程序中包含自定义的头文件: 方法1:#include "自定义的头文件.h " 方法2:工具/选择/目录/增加一个include搜索路径 返回 结束 2019年2月24日星期日
21
§4 程序调试 VC++ 开发环境中集成了功能强大的调试工具,利用它们可以调试应用程序,能设置和管理断点、查看和改变变量的值以及控制线程
调试一个程序一般分为两步: 首先修正在编译时产生的不正确的语法、拼错的关键词以及类型不匹配等错误 再用调试器检测和修正逻辑错误以及在循环、判断和相互调用中产生的错误 Huxuying 返回 结束 2019年2月24日星期日
22
调试的第一个阶段的主要任务是修正一些语法错误:
语法错误的修正 调试的第一个阶段的主要任务是修正一些语法错误: 未定义的的标识符(如函数名、变量名、类名等) 数据类型或参数类型及个数不匹配 其它的语法错误 在 “Output” 窗口中列出了所有错误项,每个错误都给出其所在的文件名、行号及其错误编号 快速定位到错误产生的源代码位置的方法: 在 “Output” 窗口中双击某个错误,或将光标移到该错误处按 Enter 键,则该错误被高亮显示,状态栏上显示出错误内容,并定位到相应的代码行中,且该代码行的最前面有个蓝色箭头标志 按 F4 键可显示下一错误,并定位到相应的源代码行 结束 2019年2月24日星期日
23
打开调试工具栏:右击工具栏/调试 启动调试器:编译/开始调试/子菜单 或:调试工具栏中命令按钮
子菜单命令 功能描述 Go F5 从当前语句开始或继续运行程序 直到断点处或程序结束 Step Into F11 单步执行下条语句,并跟踪遇到的函数 Run to Cursor Ctrl+F10 运行程序到光标所在的代码行 Attach to Process… 将调试器与 Windows 系统某个程序的运行过程联系起来,读者可以像调试 VC++ 程序一样进行调试操作 结束 2019年2月24日星期日
24
为了便于使用调试器,系统提供了一系列的工具:
调试器的使用 为了便于使用调试器,系统提供了一系列的工具: 菜单命令 窗口 对话框 结束 2019年2月24日星期日
25
调试应用程序所用到的命令可在 “编辑”、“查看”、“编译” 菜单下找到
菜单命令 调试应用程序所用到的命令可在 “编辑”、“查看”、“编译” 菜单下找到 一旦启动了调试器后,原来的“编译”菜单就会变成 “Debug” 菜单 常用调试命令: Restar (Ctrl+Shift+F5) 从第一行代码重新开始调试 StopDebugging (Shift+F5) 停止调试,返回正常的编辑过程 Go (F5) 从当前语句继续运行程序,直到断点处或程序结束 Step Out (Shift+ F11) 继续运行程序到下一个断点处 Run to Cursor (Ctrl+F10) 继续运行程序到光标所在的代码行 Step Over (F10) 单步执行下一条语句 Step Over (F10) 跳过调用函数 Step Into (F11) 进入调用函数 Step Out (Shift+ F11) 从调用函数中跳出 QuickWatch (Shift+F9) 显示 “QuickWatch” 窗口 Watch 显示 “Watch” 窗口 Variables 显示 “Variables” 窗口 结束 2019年2月24日星期日
26
菜单命令 子菜单命令 功能描述 Go F5 从当前语句继续运行程序,直到断点处或程序结束 Restar Ctrl+Shift+F5
将应用程序重新加入内存,从第一行代码开始执行,其断点仍然有效 StopDebugging Shift+F5 停止调试,返回正常的编辑过程 Break 在程序运行的当前位置终止 Apply Code Change 运行改变后的代码 Step Into F11 单步执行下条语句,并跟踪遇到的函数 Step Over F10 单步执行下一条语句,但跳过所调用的函数代码 Step Out Shift+ F11 执行函数调用外的语句,并终止在函数调用语句处 Run to Cursor Ctrl+F10 运行程序到光标所在的代码行 Step Into Specific Function Exceptions… 显示异常对话框 Threads… 显示线程对话框 Modules… 显示模块对话框 Show Next Statement 显示程序代码中的下一条语句 Quick Watch… Shift+F9 显示“Quick Watch”窗口 结束 2019年2月24日星期日
27
当调试一个应用程序时,系统会提供一系列窗口显示相关的调试信息
调试窗口 当调试一个应用程序时,系统会提供一系列窗口显示相关的调试信息 “View” 菜单下的 “Debug Windows” 子菜单可以访问它们;也可通过工具栏中的按钮进行 这些窗口既可以“浮动”也可以“停泊”,当窗口处在“浮动”状态时可以调整其大小,窗口中的信息可以在任何调试窗口进行复制,但只有“Output”窗口内的信息可以输出到打印机上便于读者检查 菜单命令 信息说明 Output 显示调试过程中的输出结果,其中包含所有的编译器、连接器、错误指示 Watch 显示变量和表达式的结果 Variables 显示当前及上一条语句所使用的变量以及函数返回值的信息等,窗口中: Auto 页显示出返回信息 Locals 页显示出当前函数使用的变量 this 页显示出由 this 所指向的对象 Registers 显示通用寄存器和 CPU 状态寄存器的当前内容 Memory 显示内存的当前内容 Call Stack 显示未返回的函数的堆栈内容 Disassembly 显示正在编译的源程序的汇编语言代码 结束 2019年2月24日星期日
28
所谓断点,实际上就是告诉调试器在何处暂时中断程序的运行,以便查看程序的状态以及浏览和修改变量的值等
VC++ 中的断点的类型: 位置断点 位置断点指示程序运行中断的代码行号 数据断点 当某表达式的值变成真或改变数值时中断程序的运行 消息断点 消息断点与窗口过程紧密相关,当窗口过程接收到一条定义的消息(如WM_SIZE)便中断程序的运行 消息断点对于MFC应用程序来说一般不起作用,因为窗口过程通常存在于MFC框架中,而不是在程序源代码中 条件断点 条件断点是位置断点的扩展,在源代码中设置断点与设置位置断点的方式相同。当某表达式的值变成真或改变数值时,则在指定位置处中断程序的运行 结束 2019年2月24日星期日
29
两种方式: 快捷方式 “Breakpoints” 对话框
断点的设置与清除 两种方式: 快捷方式 “Breakpoints” 对话框 使用快捷方式简单;使用 “Breakpoints” 对话框方式较为麻烦,但能设置所有类型的断点 快捷方式 在需要设置(或清除)断点的位置上单击鼠标右键,在弹出的快捷菜单中选择 “Insert/Remove Breakpoint” 命令 在断点所在代码行的最前面的选定区中有一个深红色的实心圆点 “Breakpoints” 对话框 打开:编辑/断点 包含三个页: Location 位置断点 Data 数据断点 Message 消息断点 结束 2019年2月24日星期日
30
当程序运行中断在某个断点时,可以使用下列调试器提供的几个窗口来查看、修改变量的值以及寄存器的内容:
查看和修改变量的值 当程序运行中断在某个断点时,可以使用下列调试器提供的几个窗口来查看、修改变量的值以及寄存器的内容: QuickWatch 窗口 Watch 窗口 Variables 窗口 Registers 窗口 结束 2019年2月24日星期日
31
QuickWatch(快速查看)窗口是用来快速查看或修改某个变量或表达式的值
使用 在表达式框中输入 变量名或表达式 按 Enter 键或单击 “重算” 命令按钮,则在当前值框中显示出相应的值 单击 “添加监视” 命令按钮,则可将刚才输入的变量或表达式及其值显示在“Watch” 窗口中 结束 2019年2月24日星期日
32
打开:启动调试器/查看/调试窗口/Watch 或:启动调试器/调试工具栏中 Watch 按钮
使用 添加新的变量或表达式 单击 “Name” 域,输入变量或表达式,按 Enter 键,相应的值就会自动出现在 “Value” 域中 修改变量或表达式的值 双击选中的变量或表达式,输入新值后按 Enter 键即可 删除变量或表达式的值 单击选定后按 Del 键 结束 2019年2月24日星期日
33
Variables 窗口能快速访问程序当前的环境中所使用的一些重要变量
Auto 页 显示出当前语句和上一条语句使用的变量,它还显示使用 “Step Over” 或 “Step Out” 命令后函数的返回值 Locals 页 显示出当前函数使用的局部变量 this 页 显示出由 this 所指向的对象 返回 结束 2019年2月24日星期日
Similar presentations