VC++6.0编译环境介绍(基础班)
- 格式:doc
- 大小:2.95 MB
- 文档页数:15
1.双击打开开发环境
2. 如下图所示:
2.点击工具栏的新建工具:
工作区变为如下界面,中间右边窗口可编辑:
3.在中间右边窗口中输入C语言代码:
4.保存文件,弹出如下对话框,将文件命名为.c文件,如test.c。
5.点击工具栏上的编译(Compile)工具或按快捷键Ctrl+F7编译程序。
弹出如下对话框,提示需要一个活动的工作空间,这是开发环境要求程序必须在一个工作空间中,点击是创建一个默认的工作空间:
编译完成后,注意开发环境下方的窗口显示的编译结果,说明程序编译通过,没有错误。
如果程序有错误,将在此处显示程序错误代码的位置以及错误提示,应注意查看。
成功编译后将产生test.obj文件。
6.点击工具栏上的连接(Build)工具或按快捷键F7连接程序。
同样要注意开发环境下方的窗口,连接成功后将生成test.exe文件。
7.点击工具栏上的运行程序工具或或按快捷键Ctrl+F5或F5运行程序,运行结果如
图所示:
注意:如果设有断点,希望程序在断点出暂停则需要使用或F5。
断点是调试程序的重要工具。
当程序出错时,可以在程序相应位置设置断点,程序运行到断点处将会暂停,这时可以查看各个变量在此刻的值,然后观察哪个变量出错,从而定位到程序的错误,进而改正。
将光标放到想要设置断点的行,通过工具栏上的工具,可以在程序的相应位置设置
断点。
设置断点后如下图所示。
断点调试技术将在后续的实验中进一步体会。
VC++6.0编译环境介绍原文地址:/s/blog_51409e8f0100cvqv.html~type=v5_one&label=rela_prevarticleVC++6.0编译环境介绍 (1)Visual C++可新建的Projects项目 (3)Visual C++的Build设置 (3)1) pile TEST.cpp选项 (3)2) 2. Build TEST.exe 选项 (4)3) 3. Rebuild All选项 (4)4) 4. Batch Build选项 (4)工程配置对话框 (4)编译参数的设置 (4)1)General一些总体设置: (5)2)C++ Language: (6)3)Code Generation: (7)4)Customize: (8)5)Listing Files: (9)6)Optimizations:代码优化设置。
(9)7)Precompiled Headers:预编译头文件的设置。
(10)8)Preprocessor:预编译处理。
(11)L INK连接参数的设置。
(12)1)General:一些总体设置。
(12)2)Customize:这里可以进行使用程序数据库文件的设置。
(13)3)Debug:设置是否生成调试信息,以及调试信息的格式。
(14)4)Input: (14)5) 5.Output: (14)R ESOURCES选项卡 (15)B ROWSE I NFO选项卡 (15)P RE-LINK STEP (15)P OST-BUILD STEP (15)其它一些参数设置。
(16)1)Project->Settings->General (16)2)Project->Settings->Debug (17)3)Project->Settings->Custom Build (17)4)Tools->Options->Directories (18)一些小窍门 (18)断点 (19)1)设置断点: (19)2)条件断点: (19)3)数据断点: (20)4)消息断点: (20)文件扩展名解读大全 (20)附录: (23)VC- PROJECT SETTING-DEBUG-PROJECT OPTION语法解释 (23)1)-优化- (23)2)-代码生成- (23)3)-输出文件- (24)4)-语言- (25)5)- 杂项 - (25)6)-链接- (26)Visual C++可新建的Projects项目Visual C++的Build设置1) pile TEST.cpp选项只编译当前文件而不调用链接器或其它工具。
C程序上机指南VC环境下C程序的开发与调试开发C语言程序,一般包括四步:(1)编辑。
可以用任何一种编辑软件将在纸上编写好的C语言程序输入计算机,并将C语言源程序文件*.c以纯文本文件形式保存在计算机的磁盘上(不能设置字体、字号等)。
(2)编译。
编译过程使用C语言编译程序将编辑好的源程序文件“*.c”翻译成二进制目标代码文件“*.obj”。
编译程序对源程序逐句检查语法错误,发现错误后,不仅会显示错误的位置(行号),还会告知错误类型信息。
我们需要再次回到编辑软件修改源程序的错误,然后,再进行编译,直至排除所有语法和语义错误。
(3)连接。
程序编译后产生的目标文件是可重定位的程序模块,不能直接运行。
连接将编译生成的各个目标程序模块和系统或第三方提供的库函数“*.lib”连接在一起,生成可以脱离开发环境、直接在操作系统下运行的可执行文件“*.exe”。
(4)运行程序。
如果经过测试,运行可执行文件达到预期设计目的,这个C 语言程序的开发工作便到此完成了。
如果运行出错,这说明程序处理的逻辑存在问题,需要再次回到编辑环境针对程序出现的逻辑错误进一步检查、修改源程序,重复编辑→编译→连接→运行的过程,直到取得预期结果为止。
一、Visual C++ 6.0开发环境介绍Visual C++ 6.0(以后简称VC)是Microsoft公司推出的可视化开发环境Developer Studio下的一个组件,为我们提供了一个集程序创建、编辑、编译、调试等诸多工作于一体的集成开发环境(IDE)。
VC集成开发环境功能强大,不仅提供了大量的向导(Wizard ),还有完备的帮助功能(MSDN)。
所以,初学者学习C语言编程,并不需要全面了解开发环境的全部功能。
我们可以在安装VC 时选择完全安装MSDN,然后在遇到问题时再去查阅MSDN中的相关说明。
通过“开始”菜单或桌面快捷方式启动Visual C++进入集成开发环境,如图1-1所示。
Visual C++ 6.0 开发环境简介一.C++ 控制台程序步骤1.启动Visual C++ 6.0 开发环境:从“开始”菜单中选择“程序| Microsoft Visual Studio 6.0 | Microsoft Visual C++ 6.0”,显示Visual C++ 6.0 开发环境窗口。
2.创建一个项目:(1)单击File 菜单中的New 选项,显示New (新建)对话框。
(2)单击Project (项目)标签,在Projects 选项卡中,选择Win32 Console Application (Win32 控制台应用程序)。
在Location(位置)文本框中指定一个路径(指向一个硬盘(C或D盘)上的文件夹,例如D:temp,可以先建立一个),在ProjectName(项目名称)文本框中为项目输入一个名字,如test1,单击OK 按钮。
(3)在弹出的Win32 Console Application-Step 1 of 1 对话框中选择An Empty Project 单选项,然后单击Finish(完成)按钮。
(4)最后在New Project Information对话框中单击OK 按钮,完成项目的建立。
3. 建立C++源程序文件:(1)选择菜单命令Project | Add to Project | New,弹出New 对话框。
(2)在New 对话框的Files 选项卡中选择C++ Source File,并填入文件名称,如test1,单击OK 按钮,完成新建C++源程序文件(这时可以在编缉窗口输入源程序)。
(3)如果已有源文件,可以选择菜单命令Project | Add to Project | Files,弹出目标文件对话框,找到所要的文件,选择OK即可。
4.编辑C++源程序文件内容:(1)在文件编辑窗口中输入代码。
(2)选择菜单命令File | Save 保存这个文件。
VC6.0 设定 UNICODE 编译环境1VC6.0 中设置 unicodeVC++6.0支持 Unicode 编程,但默认的是 ANSI,所以开发人员只需要稍微改变一下编写代码的习惯便可以轻松编写支持 UNICODE 的应用程序。
使用 VC++6.0 进行 Unicode 编程主要做以下几项工作:1、为工程添加 UNICODE 和 _UNICODE 预处理选项。
具体步骤:打开[工程]->[设置…]对话框,在 C/C++ 标签对话框的“预处理程序定义”中去除 _MBCS,加上 _UNICODE,UNICODE。
(注意中间用逗号隔开).在没有定义 UNICODE 和 _UNICODE 前,所有函数和类型都默认使用 ANSI 的版本;在定义了 UNICODE 和 _UNICODE 之后,所有的 MFC 类和 Windows API 都变成了宽字节版本了。
2、设置程序入口点因为MFC应用程序有针对 Unicode 专用的程序入口点,我们要设置 entrypoint。
否则就会出现连接错误。
设置entry point的方法是:打开[工程]->[设置…]对话框,在 Link 页的 Output 类别的 Entry Point 里填上 wWinMainCRTStartup。
3、使用 ANSI/Unicode 通用数据类型微软提供了一些 ANSI 和 Unicode 兼容的通用数据类型,我们最常用的数据类型有 _T,TCHAR,LPTSTR,LPCTSTR。
顺便说一下,LPCTSTR 和 const TCHAR * 是完全等同的。
其中L表示 long 指针,这是为了兼容 Windows3.1 等16位操作系统遗留下来的,在 Win32 中以及其它的32位操作系统中,long 指针和 near 指针及 far 修饰符都是为了兼容的作用,没有实际意义。
P(pointer) 表示这是一个指针;C(const) 表示是一个常量;T(_T宏)表示兼容 ANSI 和 Unicode,STR(string) 表示这个变量是一个字符串。
附录:VC++6.0编译环境介绍公欲善其事,必先利其器”的道理。
数据结构课程研究的重点是典型的数据逻辑结构、物理结构及其上的基本操作的实现,为了数据结构课程的特点是逻辑性强、概念多且比较抽象,同时该课程实践性也较强。
通过实验理解和掌握数据结构理论,通过数据结构理论指导实践问题的解决,两者相辅相成、缺一不可。
数据结构的实验程序在Windows操作系统下,以VC++ 6.0为编程集成环境开发而成,因此了解并掌握VC++ 6.0的开发环境及其使用技巧,对理解和掌握复杂数据结构算法的实现代码有着极大的帮助,即所谓:“避免图形用户界面程序设计(Windows编程课程)中界面设计上的代码复杂性,所有的实验程序都属于控制台应用程序。
下面介绍什么控制台应用程序,以及VC++的开发模式包括建立工程、编写代码、编译、调试等。
1. 控制台应用程序控制台应用程序是为了兼容DOS程序而设立的,这种程序的执行就好像在一个DOS窗口中执行一样,没有自己的界面。
如某个可执行文件“G:\数据结构\代码\线性表\顺序表\Debug\顺序表.exe”是一个控制台应用程序,如图1.1所示。
图1.1控制台程序启动的方法有四种:(1)在VC++ 6.0开发环境单击菜单“组建”\“执行”子菜单,或快捷键“ctrl+F5”,或工具栏“!”按钮。
(2)在资源管理器中,打开“顺序表.exe”所在的文件目录,双击可执行文件图标即可,注意如果控制台程序代码中没有暂停的功能如函数system(“pause”),则启动后即可结束,黑屏一闪而过。
(3)在桌面状态栏单击“开始”菜单\“运行”,键入可执行文件路径,点击“确定”按钮,执行效果和方法(2)一样,如图1.2所示。
图1.2 运行对话框(4)在桌面状态栏单击“开始”菜单 “运行”,键入“cmd”,进入命令行窗口,如图1.3所示。
图1.3 命令行窗口利用命令行启动可执行文件,首先切换目录到“G:\数据结构\代码\分类二叉树\Debug”下,键入可执行文件后回车即可,程序执行结束回到当前命令行下,而不会一闪而逝。
在命令行模式下可以运行任何类型可执行文件如explorer.exe、notepad.exe等。
图1.1和图1.3显示的界面是默认的黑色背景和白色字体,可以单击鼠标右键,在快捷菜单如图1.4(a)选择“属性”,在弹出的属性对话框如图1.4(b)中设置控制台程序界面。
(a) (b)图1.4 属性对话框也可以用在命令行窗口直接用命令实现界面控制或设置,常用的命令有color,mode con,pause,cls等,使用方法可以参见帮助,如键入:help color,则有:_______________________________________________________________________________________ 设置默认的控制台前景和背景颜色。
COLOR [attr]attr 指定控制台输出的颜色属性颜色属性由两个十六进制数字指定-- 第一个为背景,第二个则为前景。
每个数字可以为以下任何值之一:0 = 黑色8 = 灰色1 = 蓝色9 = 淡蓝色2 = 绿色 A = 淡绿色3 = 浅绿色 B = 淡浅绿色4 = 红色 C = 淡红色5 = 紫色 D = 淡紫色6 = 黄色 E = 淡黄色7 = 白色 F = 亮白色如果没有给定任何参数,该命令会将颜色还原到CMD.EXE 启动时的颜色。
这个值来自当前控制台窗口、/T 命令行开关或DefaultColor 注册表值。
如果用相同的前景和背景颜色来执行COLOR 命令,COLOR 命令会将ERRORLEVEL 设置为1。
例如: "COLOR fc" 在亮白色上产生亮红色_______________________________________________________________________________________ 在控制台程序中使用system()函数可以让代码直接控制或设置控制台界面和流程,如:(1)修改显色:system("COLOR 6f");(2)修改界面宽高度:system("mode con: cols=140 lines=130");(3)清屏:system("cls");(4)暂停程序运行:system("pause");等其它的命令包括更改、添加或删除目录,删除、复制或移动文件,显示、修改文件属性,调用其他可执行文件等等。
2. 控制台应用程序开发2.1. 生成工程:VC++将一个应用程序作为一个工程对待,工程中除了代码文件*.cpp外,还包括其他自动生成的相关文件,步骤如下:1)建立空工程执行菜单“文件\新建”,打开新建对话框,选中“工程”选项卡,选择“Win32 Console Application”如图2.1所示:图2.1新建对话框-工程选项卡图2.1的“位置”文本框设置项目路径,“工程名称”文本框设置应用程序名称。
工程类型选择对话框如图2.2所示,通常选择一个空工程即可,其他的工程类型会自动生成预编译头文件: Stdafx.h and Stdafx.cpp,这里不需要。
一个空工程建立后,在对应的工程文件夹下自动生成图2.3所示的文件。
图2.3工程类型选择对话框自动的工程文件解释如下(1)*.DSP:VC开发环境生成的工程文件。
(2)*.DSW:VC开发环境生成的“工作区”文件,用来把多个工程组织到一个“工作区”中。
工作区文件,与.dsp差不多。
(3)*.NCB:NCB是“No Compile Browser”的缩写,其中存放了供ClassView、WizardBar和Component Gallery使用的信息,由VC开发环境自动生成。
无编译浏览文件。
当自动完成功能出问题时可以删除此文件。
编译工程后会自动生成。
(4)*.OPT:VC开发环境自动生成的用来存放“工作区”中各种选项的文件。
工程关于开发环境的参数文件。
如工具条位置信息等。
2)生成和编辑源程序文件本课程的源程序文件主要用到C++ Source File即CPP文件和C/C++ Header FILE,如执行菜单“文件\新建”,打开新建对话框,选中“文件”选项卡(缺省),选择“C++ Source File”如图2.4所示,键入文件名并确定后,VC++生成相应的CPP文件,并进入编辑模式。
图2.4新建对话框-文件选项卡VC开发界面如图2.5所示。
编辑区图2.5 VC 开发界面 VC 开发界面如图2.5所示,VC 开发界面通常包括工作空间和代码编辑区,工作空间有两个选项卡:ClassView 和FileView 。
(1)ClassView :显示当前源程序文件中几乎所有信息包括定义的结构体(图标)、函数(图标)、全局变量(图标),如果查看或编辑main 函数,只需在ClassView 中双击main, 代码编辑区立刻定位main 函数所在的位置,十分便利,如果某个结构体、函数或全局变量定义错误,则在ClassView 中不会显示。
(2)FileView :显示当前工程中包含的源程序文件,简单工程通常只有一个CPP 文件,复杂工程通常有多个CPP 文件和H 文件。
在FileView 中可以添加或删除源程序文件,相应的ClassView 显示变化结果。
工作空间的打开可以通过执行菜单“查看\工作空间”完成,如图2.6所示。
图2.6 菜单“查看\工作空间” 3)打开和编辑工程当重新打开并编辑已经存在的控制台应用程序时,注意要作为一个工程打开,在资源管理器中鼠标双击*.DSW 文件,或执行菜单“文件\打开工作空间,,,”,选择相应的*.DSW 文件。
如果选择CPP 文件打开,图2.5 所示的VC开发界面只包含代码编辑区,将失去工程环境下的所有便利,如快书查看、定位,C库函数编辑提示,结构体变量成员提示等等,出错几率大为上升。
2.2 代码书写规范代码是数据结构中算法逻辑或思路的反映和实现,算法逻辑具有层次性,代码书写也应有层次性即代码规范问题,如图2.7所示。
空一行空一行空一行空一行空一行图2.7代码书写规范控制台应用程序主体由头文件(C库函数及变量、结构声明)、常量定义、结构体定义、全局变量定义和函数定义等几个部分构成,各个部分在书写时应有空行。
在函数体内,不同的逻辑部分之间也应有空行,嵌套的逻辑或语法应该设置相应的缩进格式,如图中的“ ”是一个制表符“TAB”键(默认4个字符宽,可以在菜单“工具\选项”中设置)。
另外代码规范还包括成对编码的书写,如函数定义、for循环或if语句,先写上面的大括号“{”,然后马上写下面的大括号“}”。
这样一个函数体就已经形成了,即使两个大括号之间什么也没有,仍然可以进行编译或调试。
代码规范书写可以很清晰表达代码层次以及算法的步骤和逻辑,十分便于阅读、调试或纠错等工作。
2.3 代码组建VC组建可执行文件的流程大致分为两步:编译和连接,组建菜单如图2.8所示。
图2.8 组建菜单1)“编译示例.cpp”选项:只编译当前文件(生成“示例.obj”文件)而不调用链接器或其它工具。
输出窗口将显示编译过程检查出的错误或警告信息,在错误信息处双击鼠标左键,或单击鼠标右键,可以得到错误代码的位置。
2)“组建EXAMPLE.exe”选项:对最后修改过的源文件进行编译和链接。
EXAMPLE是工程名称,示例.cpp是该工程的一个文件,这里工程EXAMPLE只有一个CPP文件。
3)“全部组建”选项:该选项允许用户编译所有的源文件,而不管它们何时曾经被修改过。
4)“批组建…”选项:该选项能单步重新建立多个工程文件,并允许用户指定要建立的项目类型.VC 提供了两种目标应用程序类型Win32 Release(发行版)、Win32 Debug(调试版)。
源文件通过编译生成了.obj文件;所有.obj文件和.lib文件通过连接生成.exe文件或.dll文件。
通过VC安装自带的工具“Dependency Walker”查看*.exe或*.dll文件,可以查看可执行文件用到了哪些库函数(*.dll),如图2.9展示了notepad.exe文件,其中任何一个*.dll缺失,意味着该程序需要的一组功能函数无法定位或调用,notepad.exe不可执行,Windows系统会提示无法找到某个dll文件,依据提示可以上网下载相应dll文件,存放在系统目录system32下即可。
图2.9 Dependency Walker-notepad.exe应用程序类型Win32 Release(发行版)、Win32 Debug(调试版),分别在Release目录和Debug目录下:1)默认系统Debug类型,包含调试信息,并却不作任何优化,便于调试,对应的exe文件较大,如EXAMPLE.exe有200多K。