1、 C语言-C++(C/C++)。语言标准:支持printf();
C/C++编译器:支持以上标准的编译器
VC-Ms:(Win95以后VC成为最强大的编译器) VC6-VC7 (VS2003) VS2005-VS2008.
C++Builder:Borland(Tubo C/C++)
C++ Developer等
gcc/g++:Linux
2、 VC界面布局:Microsoft Visual C++ 6.0
a)ClassView:对类和成员以及全局变量和函数进行浏览。
b)FileView:管理参与编译的源代码文件。
c)Build:生成执行文件过程产生的错误或警告
如果有Error就不能生成执行文件,如果有warning:代码中可能有些问题
3、 调试技术:调试能力是程序员最重要的能力。
将错误程序通过单步执行,跟踪,找出错误并且更正的过程就是调试。
4、 阅读MSDN的方法:
a)简要说明
b)返回值(return value)
c)参数(parameter)
d)备注(Remarks):最详细的说明
e)例子 (Examples):最快速的学习函数的使用方法。。
5、介绍:
Visual C++ 6.0(简称VC或者VC6.0),是微软公司在1998年推出的C++开发工具。它是一个功能强大的可视化软件开发工具,
不仅仅只是一个C++ 编译器,而是一个基于Windows操作系统的集成开发环境(IDE:Integrated Development Enviroment)。
这个集成开发环境包括:编译器、编辑器、调试器、程序向导(APPWizard)和类向导(ClassWizard)等开发工具;
在初期学习C语言和C++语法阶段,主要新建控制台应用程序Win32 Console Application。
后期进入Windows专业软件开发期间主要新建MFC应用程序和Win32应用程序;
标准的打开VC工程的方式是,打开VC后选择主菜单中的File——> open Workspace 菜单项;在弹出的对话框中,选择工程目录下的.dsw文件打开;
关闭VC工程的方式,选择主菜单下的File --> close Workspace菜单,或者直接把整个VC窗口关闭;
VC的界面主要由工作区窗口、源代码窗口和输出窗口 三部分组成;
工作区(Workspace)窗口主要管理工程文件,包含ClassView和FileView两个分页
classView页面,主要用于浏览全局变量和函数、结构体、类及成员变量和成员函数等等。双击其中的函数或者类名,源代码窗口将自动定位到对应的定码位置。(例如:双击main函数)
FileView页面,主要管理参与编译的代码文件列表;
在FileView页面中选中列表中的一个文件后,按<delete>键可将选中的某个cpp文件从编译列表中移除。从列表中移除后该文件依然存在,但是该文件不再参与VC工程的编译了。
在FileView页面中,右键单击树形控件的files节点,再单击Add Files To Project菜单项,可以对应的文件添加到编译列表中来。
在FileView页面中,选中编译列表中的一个树形节点,再按<Ctrl+Z>组合键,则可以撤销上一次列表中文件的删除或者添加操作。
选择主菜单中的Save菜单项,可以对变动后的编译列表进行保存;
信息输出窗口(Output),包含Output、build以及Debug等分页。
如果代码编写没有错误,按<F7 build>快捷键编译时,会提示“0 error(s), 0 warning(s)”。
如果代码编写不正确,编译时就会出现错误提示。如果有多条错误提示,按<F4>快捷键键可以逐条查阅所有错误,并定位到出错的代码位置。
号码 | 错误提示 | 错误原因 |
C2065 | 'xxx' : undeclared identifier | 变量名或者函数名错误,没有声明,编译时错误 |
C1083 | Cannot open include file: 'xxx.h': No such file or directory | 没有包含头文件或者包含的文件不存在,编译时错误 |
C1010 | unexpected end of file while looking for precompiled header directive | #include “stdafx.h”这行代码不能删除 |
C2018 | unknown character '0xa3' | 代码中出现不可识别的字符,主要是中文字符 |
C2106 | left operand must be l-value | 主要是指不可以对函数的返回值赋值 |
C2166 | l-value specifies const object | 主要是给常量赋值,当常量在等号左边时提示 |
C2196 | case value '100' already used | Switch 语句中case分支已经存在 |
C2051 | case expression not constant | Switch语句中case分值必须是常量,不能是变量 |
C2057 | expected constant expression | 定义数组时,元素个数指定必须是常量,不能是变量 |
C2734 | const object must be initialized | 定义const常量时必须初始化 |
C2628 | did you forget a ';'? | 定义结构体类型时,必须在结尾加分号结束 |
C2460 | uses 'xxx', which is being defined | 定义结构体类型时,使用自身结构体做成员变量 |
高级调试中使用OutputDebugString函数(MFC中使用TRACE),将程序执行过程中的信息打印到Debug窗口.
在主菜单中选择Edit->find in files菜单项,可以在多个源文件中查找关键字。在指定目录下查找到文字时,将查找的结果显示在find in files分页窗口。
如果有多条查找结果,按<F4>快捷键键可以逐条查阅所有查找到的结果;
进入调试状态就是指进入程序代码内部,跟踪查看对比每一行代码执行的过程。可以采用以下几种方式进入程序的调试状态
a) 直接按<F10>或者<F11>快捷键,进入main函数开始单步执行程序过程;
b) 按<F9>键在光标所在行设置一个断点,然后按<F5>键让程序直接运行到断点处再单步执行;
c) 把光标停放在程序代码的某一行,然后按< ctrl+F10 >组合键让程序直接运行到光标处。
进入调试状态后,在VC底部会自动出现2个窗口。它们分别是:手动变量观察窗口(Watch)和自动变量观察窗口( Variables)。
此外,VC的顶部还会出现一个调试工具栏( Debug)。以上窗口只能在调试状态下才能出现,在正常的编辑状态下是无法出现的,缺省左边是Variables窗口右边是Watch窗口。
Variables上方比Watch多了一个下拉窗口,内部列出的是函数之间的调用关系(CallStack)。而且列表是只读性质的,不可以编辑或者拖入变量。
随着程序运行到每一行时,自动显示该行涉及到的变量和变量的数值变化;
调试快捷键
快捷键 | 名称 | 功能 |
F9 | Insert/Remove Breakpoint | 在光标处插入或者删除一个断点,第一次插入第二次清除 |
F5 | Go | 以调试模式运行,遇到断点处停下 |
F10 | Step Over | 单步执行当前代码,从main函数第一行代码开始执行 |
F11 | Step Into | 进入当前子函数内部代码执行 |
Shift+F11 | Step Out | 从当前子函数内直接退出,回到主调函数的执行代码处 |
Shift+F5 | Stop Debug | 终止调试状态回归编辑状态 |
Ctrl+F5 | Execute Program | 不进入调试模式直接运行,查看程序运行结果(不推荐 |
在MSDN左侧的索引中输入“printf”然后回车,打开关于该函数的说明。一个函数的说明主要包括以下几个部分:
a) 函数名称:函数下面是该函数的简要说明;
b) 函数格式:包括该函数的参数列表和返回值;
c) 包含文件:只有包含了所在的头文件,该函数才能使用;
d) 返回值( Return Values):返回计算结果或者反映函数的执行结果;
e) 参数说明( Parameters):说明参数类型和参数含义,以及使用参数的注意事项等等;
f) 备注( Remarks):是对函数最深入最完整的说明文字,要深入掌握一个函数就仔细研读这里;
g) 例程( Example):很多函数都有样例程序,通过测试这些样例程序可以快速掌握函数的用法。
Windows通用快捷键:
Ctrl+S:保存文本。
Ctrl+A:选择所有文本
Ctrl+F:在当窗口查找文本
Ctrl+H:在当前窗口替换文本
Ctrl+G:定位到指定的行
MS+M:最小化所有窗口/复原窗口
Alt+F4:关闭当前应用程序
Ctrl+F4:关闭应用程序的当前子窗口
Alt+Tab:应用程序间的窗口切换
Ctrl+Tab:应用程序内部子窗口间切换
2、文本或代码编辑快捷键:
Ctrl+Z:撤消上一次操作
Ctrl+Y:撤消Ctrl+Z操作
Ctrl+X:剪切(或者使用shift+delete)
Ctrl+C:拷贝(或者使用ctrl+insert)
Ctrl+V:粘贴(或者使用shift+insert)
Home:将光标移至当前行的头部
End:将光标移动至当前行的末尾
PageUp:向上翻页
PageDown:向下翻页
Shift+箭头键:选定指定的文本
Shift+Home:选定光标所在行的前面部分文本
Shift+End:选定光标所在行的后面部分文本
Shift+PageUp:选定上一页文本
Shift+PageDown:选定下一页文本
Ctrl+左箭头:光标按单词向左跳走
Ctrl+右箭头:光标按单词向右跳走
Tab:将选定文本缩进
Shift+Tab:将选定文本反缩进
3、VC内部专用快捷键:
Ctrl+Shift+Space:列出函数的参数信息
Alt+0:显示Workspace工作区窗口
Alt+2:显示输出窗口
Alt+3:显示变量观察窗口
Alt+4:显示变量自动查看窗口
Alt+5:显示寄存器查看窗口
Alt+6:显示内存窗口
Alt+7:显示堆栈窗口
Alt+8:显示汇编窗口
F7:编译整个项目
Ctrl+F7:编译当前的源文件
F5:调试运行
Ctrl+F5:非调试运行,直接执行生成的EXE文件
Shift+F5:结束运行
F9:设调试断点
F10:单步调试,不进入函数体内部
F11:单步调试,进入函数体内部
Shift+F11:运行至当前函数体外部。
Alt+F8:格式化选定的文本
*******************************************************************************************************************************************************
//测试程序:
程序1:控制台输入
#include <stdio.h>
int main()
{
int i = 0;
int j;
scanf("%d",&i);
j = i+1;
return 0;
}
程序2:结构体、函数格式、类格式
#include "stdafx.h"
#include <stdio.h>
struct Test
{
int m;
int n;
};
class CTest
{
};
int GetCount();
//一个执行文件必须有而且只能有1个main,因此也叫入口函数。
int main(int argc, char* argv[])
{
int i = GetCount();
printf("GetCount返回值:%d",i);
//printf("Hello C语言!\n");
return 0;
}