C语言实验讲义 (2)屏幕上出现如图2-2所示的“Win32 Console Application-一Step1of 1”对话框后,选择“An empty project'”项,然后单击“E完成(Finish)”按 钮继续 Vin32 Console Application-Step I of I 2☒ 。An emply projeet. A simple application. CA"Hello.World!'application. C An application that supports MFC. <B上一个N下一个>E完成☐取消 图2-2Win32 Console Application-Step1of1对话框 出现如图2-3所示的“新建工程信息(New Project Information)”对话框 后,单击“确定(OK)”按钮完成工程创建。创建的工作区文件为myexaml.ds 和工程项目文件myexaml.dsp。 新建工程信息 工程目录: D:\Myprojecfmyexam1 确定取消」 图2-3新建工程信息对话框 3.新建C源程序文件 选择主菜单“工程(Project)”中的“添加工程(Add to Project)→新建 (New)”选项,为工程添加新的C源文件
C 语言实验讲义 (2)屏幕上出现如图 2-2 所示的“Win32 Console Application—Step 1 of 1”对话框后,选择“An empty project”项,然后单击“F 完成(Finish)”按 钮继续: 图 2-2 Win32 Console Application—Step 1 of 1 对话框 出现如图 2-3 所示的“新建工程信息(New Project Information)”对话框 后,单击“确定(OK)”按钮完成工程创建。创建的工作区文件为 myexam1.dsw 和工程项目文件 myexam1.dsp。 图 2-3 新建工程信息对话框 3. 新建 C 源程序文件 选择主菜单“工程(Project)”中的“添加工程(Add to Project)→新建 (New)”选项,为工程添加新的 C 源文件
C语言实验讲义 注 2☒ 文件|工程|其它文档 。A添加工程 myexaml 文件 myexaml.c Script 确定☐结束 图2-4加入新的C源程序文件 出现如图2-4所示的“新建”对话框后,选择“文件(Fi1e)”选项卡,选 定“C+Source File”项,在“文件(File Name)”栏填入新添加的源文件名, 如nyexaml.c,“C目录:(Location)” 栏指定文件路径,单击“确定(OK)” 按钮完成C源程序的系统新建操作,如图2-4所示。 在文件编辑区输入源程序,然后保存工作区文件,如图2-5所示。 注意:填入C源文件名一定要加上扩展名“.c”,否则系统会为文件添加默 认的C+源文件扩展名“,CPp” 目文件院特查香括入工提简译工具自口衫助 自日a为用的2,企,四元管 New Class c-") Savea the document 图2-5建立c源程序 4.打开己存在的工程项目, 进入Visual C+6.O环境后,选择主菜单“打开工作区(0 pen Workspace)” 命令,在“Open Workspace”对话框内找到并选择要打开的工作区文件 myexaml.dsw,单击“确定(OK)”按钮,打开工作区
C 语言实验讲义 图 2-4 加入新的 C 源程序文件 出现如图 2-4 所示的“新建”对话框后,选择“文件(File)”选项卡,选 定“C++ Source File”项,在“文件(File Name)”栏填入新添加的源文件名, 如 myexam1.c,“C 目录:(Location)”一栏指定文件路径,单击“确定(OK)” 按钮完成 C 源程序的系统新建操作,如图 2-4 所示。 在文件编辑区输入源程序,然后保存工作区文件,如图 2-5 所示。 注意:填入 C 源文件名一定要加上扩展名“.c”,否则系统会为文件添加默 认的 C++源文件扩展名“.CPP”。 图 2-5 建立 c 源程序 4.打开已存在的工程项目,编辑 C 源程序 进入 Visual C++6.0 环境后,选择主菜单“打开工作区(Open Workspace)” 命令,在“Open Workspace”对话框内找到并选择要打开的工作区文件 myexam1.dsw,单击“确定(OK)”按钮,打开工作区
C语言实验讲义 回可☒ -6× members[Na members-Create New Ciass. 国0 pen Torkapac0 2☒ 查找流围①: 习图心团 ( G开D 打开工程自源程序控制 s来源控制 图2-6打开myexaml.c源程序 在左侧的工作区窗口,单击下方的“FileView”选项卡,选择文件视图显 示,打开“Source”文件夹,再打开要编辑的C源程序进行编辑和修改。如图 2-6所示。 5.在工程项目中添加已经存在的C源程序文件 选择主菜单“打开工作区(Open Workspace)”命令,在“Open Workspace” 对话框内找到并选择要打开的工作区文件“myexam.dsw”,单击“确定(OK)”按钮 打开工作区。 将已经存在的C源程序文件添加工程到当前打开的工程区文件中,选择主菜单 “工程(Project)” 中的“添加工程(Add to Project)→File” 选项,在“Inser File into Project'”对话框内找到已经存在的C源程序文件,单击“确定(OK) 按钮完成添加。 6.编译、连接和运行 (1)编译 选择主菜单“编译(Build)”中的“编译(Compile)”命令,或单击工具条 上的图标多,系统只编译当前文件而不调用链接器或其它工具。输出(Output) 窗口将显示编译过程中检查出的错误或警告信息,在错误信息处单击鼠标右键或 双击鼠标左键,可以使输入焦点跳转到引起错误的源代码处大致位置以进行修 改。如图2-7所示,输出窗口中提示“E ror C2146: miss e fore1 dentifier sum形 。提示在标识符sUm2之前缺少分号,同时在程序菌 口标注出出错语句的大致位置。在“suml=b一”语句的后面加一个分号后再编译 一次即可。 (2)构建 选择主菜单“编译(Build)”中的“构建(Build)”命令,或单击工具条上 的图标草,对最后修改过的源文件进行编译和连接。 选择主菜单“编译(Build)”中的“重建全部(RebuildAll)”命令,允许 用户编译所有的源文件,而不管它们何时曾经被修改过
C 语言实验讲义 图 2-6 打开 myexam1.c 源程序 在左侧的工作区窗口,单击下方的 “FileView” 选项卡,选择文件视图显 示,打开“Source”文件夹,再打开要编辑的 C 源程序进行编辑和修改。如图 2-6 所示。 5.在工程项目中添加已经存在的 C 源程序文件 选择主菜单“打开工作区(Open Workspace)”命令,在“Open Workspace” 对话框内找到并选择要打开的工作区文件“myexam.dsw”,单击“确定(OK)”按钮 打开工作区。 将已经存在的 C 源程序文件添加工程到当前打开的工程区文件中,选择主菜单 “工程(Project)”中的“添加工程(Add to Project)→ File”选项,在“Insert File into Project”对话框内找到已经存在的 C 源程序文件,单击“确定(OK)” 按钮完成添加。 6.编译、连接和运行 (1)编译 选择主菜单“编译(Build)”中的“编译(Compile)”命令,或单击工具条 上的图标 ,系统只编译当前文件而不调用链接器或其它工具。输出(Output) 窗口将显示编译过程中检查出的错误或警告信息,在错误信息处单击鼠标右键或 双击鼠标左键,可以使输入焦点跳转到引起错误的源代码处大致位置以进行修 改。如图 2-7 所示,输出窗口中提示“Error C2146: syntax error : missing ';' before identifier 'sum2'”,提示在标识符 sum2 之前缺少分号,同时在程序窗 口标注出出错语句的大致位置。在“sum1=b-a”语句的后面加一个分号后再编译 一次即可。 (2)构建 选择主菜单“编译(Build)”中的“构建(Build)”命令,或单击工具条上 的图标 ,对最后修改过的源文件进行编译和连接。 选择主菜单“编译(Build)”中的“重建全部(Rebuild All)”命令,允许 用户编译所有的源文件,而不管它们何时曾经被修改过
C语言实验讲义 选择主菜单“编译(Build)”中的“批构建(Batch Build)”命令,能单 步重新建立多个工程文件,并允许用户指定要建立的项目类型。 程序构建完成后生成的目标文件(.obj),可执行文件(exe)存放在当前工 程项目所在文件夹的“Debug1 子文件夹中。 o-tegrtd 日件棉五入工我工A口 迪心日日送电危2·,巧页台 -global member,◆main 滨保连按运行 pintesum1-id.sun2-".sunt.sun2): gration:exant-vin32 Debug- a1.c(18)error C2146:syntax error missing ':before identifier u2” 输出窗口 Ln 9.Cel 13 REC COL OVR READ 图2-7编译、连接和运行.C源程序 (3)运行 选择主菜单“编译(Build)”中的“执行(Build Execute)”命令,或单 击工具条上的图标!,执行程序,将会出现一个新的用户窗口,按照程序输入 要求正确输入数据后,程序即正确执行,用户窗口显示运行的结果。 对于比较简单的程序,可以直接选择该项命令,编译、连接和运行一次完成。 7.调试程序 在编写较长的程序时,能够一次成功而不含有任何错误决非易事,对于程序 中的错误,系统提供了易用且有效的调试手段。调试是一个程序员最基本的技能 不会调试的程序员就意味着即使学会了一门语言,却不能编制出任何好的软件 (1)调试程序环境介绍 ①进入调试程序环境 选择主菜单“编译(Build)”中的“开始调试(Start Debug)”命令,选择 下一级提供的调试命令,或者在菜单区空白处单击鼠标右键,在弹出的菜单中选 中“调试(Debug 激活调试工具条 选择需要的调试命令,系统将会进入 调试程序界面。同时提供多种窗口监视程序运行,通过单击“调试(Debug)”工 具条上的按钮,可以打开/关闭这些窗口,参考图2-8。 ②Watch(观察)窗口 单击调试(Debug)工且条上的Watch按.就出现一个Watch窗口 系统支持查看程序运行到当前指令语句时变量、表达式和内存的值。所有这 些观察都必须是在断点中断的情况下进行。 观看变量的值最简单,当断点到达时,把光标移动到这个变量上,停留一会 就可以看到变量的值
C 语言实验讲义 选择主菜单“编译(Build)”中的“批构建(Batch Build)”命令,能单 步重新建立多个工程文件,并允许用户指定要建立的项目类型。 程序构建完成后生成的目标文件(.obj),可执行文件(exe)存放在当前工 程项目所在文件夹的“Debug” 子文件夹中。 图 2-7 编译、连接和运行.C 源程序 (3)运行 选择主菜单“编译(Build)”中的“执行(Build Execute)”命令,或单 击工具条上的图标 ,执行程序,将会出现一个新的用户窗口,按照程序输入 要求正确输入数据后,程序即正确执行,用户窗口显示运行的结果。 对于比较简单的程序,可以直接选择该项命令,编译、连接和运行一次完成。 7.调试程序 在编写较长的程序时,能够一次成功而不含有任何错误决非易事,对于程序 中的错误,系统提供了易用且有效的调试手段。调试是一个程序员最基本的技能, 不会调试的程序员就意味着即使学会了一门语言,却不能编制出任何好的软件。 (1)调试程序环境介绍 ① 进入调试程序环境 选择主菜单“编译(Build)”中的“开始调试(Start Debug)”命令,选择 下一级提供的调试命令,或者在菜单区空白处单击鼠标右键,在弹出的菜单中选 中“调试(Debug)”项。激活调试工具条,选择需要的调试命令,系统将会进入 调试程序界面。同时提供多种窗口监视程序运行,通过单击“调试(Debug)”工 具条上的按钮,可以打开/关闭这些窗口,参考图 2-8。 ② Watch(观察)窗口 单击调试(Debug)工具条上的 Watch 按钮,就出现一个 Watch 窗口, 系统支持查看程序运行到当前指令语句时变量、表达式和内存的值。所有这 些观察都必须是在断点中断的情况下进行。 观看变量的值最简单,当断点到达时,把光标移动到这个变量上,停留一会 就可以看到变量的值
C语言实验讲义 还可以采用系统提供一种被称为Watch的机制来观看变量和表达式的值。在 断点中断状态下,在变量上单击右键,选择Quick Watch, 就弹出一个对话框 显示这个变量的值 在该窗口中输入变量或者表达式,就可以观察变量或者表达式的值。注意 这个表达式不能有副作用,例如“+”和 运算符绝对禁止用于这个表达 式中,因为这个运算符将修改变量的值,导致程序的逻辑被破坏。 单击调试(De ug)工具条上的“Variables“按钮弹出Variables窗口,显 示所有当前执行上下文中可见的变量的值。特别是当前指令语句涉及的变量,以 红色显示。 ④Memory(内存) 由于指针指向的数组,Watch窗口只能显示第一个元素的值。为了显示数组 的后续内容,或者要显示一片内存的内容,可以使用memory功能。单击调试 Debug 工具条上的 安钮,就弹出 一个对话框 在其中输入地址 就可以显示该地址指向的内存的内容。 ⑤Registers(寄存器) 单击调试(Debug)工具条上的“Registers'”按钮弹出一个对话框,显示当 前的所有寄存器的值。 ⑥Call Stack (调用雄找 调用堆栈反映了当前断点处函数是被哪些函数按照什么顺序调用的。单击 调试(Debug)工具条上的.“Call stack”显示Call Stack对话框。在Call Stack 对话框中显示了一个调用系列,最上面的是当前函数,往下依次是调用函数的上 级函数。单击这些函数名可以跳到对应的函数中去。 8 瓷餐置 调试工具布 上下mim 月tch1th2Wth3tc7 图2-8调试程序界面 (2)单步执行调试程序 系统提供了多种单步执行调试程序的方法:可以通过单击调试(Debug)工 具条上的按钮或按快捷键的方式选择多种单步执行命令 ①单步跟踪进入子函数(Step Into,F11),每按一次F11键或按?,程 序执行一条无法再进行分解的程序行,如果涉及到子函数,进入子函数内部:
C 语言实验讲义 还可以采用系统提供一种被称为 Watch 的机制来观看变量和表达式的值。在 断点中断状态下,在变量上单击右键,选择 Quick Watch, 就弹出一个对话框, 显示这个变量的值。 在该窗口中输入变量或者表达式,就可以观察变量或者表达式的值。注意: 这个表达式不能有副作用,例如“++”和“- -”运算符绝对禁止用于这个表达 式中,因为这个运算符将修改变量的值,导致程序的逻辑被破坏。 ③ Variables(变量)窗口 单击调试(Debug)工具条上的“Variables“按钮弹出 Variables 窗口,显 示所有当前执行上下文中可见的变量的值。特别是当前指令语句涉及的变量,以 红色显示。 ④ Memory(内存) 由于指针指向的数组,Watch 窗口只能显示第一个元素的值。为了显示数组 的后续内容,或者要显示一片内存的内容,可以使用 memory 功能。单击调试 (Debug)工具条上的“memory“按钮,就弹出一个对话框,在其中输入地址, 就可以显示该地址指向的内存的内容。 ⑤ Registers(寄存器) 单击调试(Debug)工具条上的“Registers”按钮弹出一个对话框,显示当 前的所有寄存器的值。 ⑥ Call Stack(调用堆栈) 调用堆栈反映了当前断点处函数是被哪些函数按照什么顺序调用的。单击 调试(Debug)工具条上的.“Call stack”显示 Call Stack 对话框。在 Call Stack 对话框中显示了一个调用系列,最上面的是当前函数,往下依次是调用函数的上 级函数。单击这些函数名可以跳到对应的函数中去。. 图 2-8 调试程序界面 (2) 单步执行调试程序 系统提供了多种单步执行调试程序的方法:可以通过单击调试(Debug)工 具条上的按钮或按快捷键的方式选择多种单步执行命令。 ① 单步跟踪进入子函数(Step Into,F11),每按一次 F11 键或按 ,程 序执行一条无法再进行分解的程序行,如果涉及到子函数,进入子函数内部;