程序设计基础
程序 = 数据结构 + 算法 ( + 程序设计方法学)
部分内容与数据结构算法中的内容重合了,不过这是基础
语言基础
语言的基本概念
基本数据类型及计算
程序控制结构
复合数据
程序设计
结构化程序设计
数据基本概念
程序中从三个方面对数据进行描述: 数据名称、数据特征、特征值
- 计算机编程时,记住: 计算机能够处理数据,但它并不了解信息,计算机可以按照我们规定的方法或手段对数据进行处理,但却不知道那些数据具体的意义
- 常量: 魔数,应该将其在开头定义
变量的特征:
- 变量总是具有值的;
- 变量总是与内存中的地址相对应;
- 变量总是具名的;
- 变量具有自己的确定类型,编译器需要知道变量的类型以便为其开辟合适的存储空间并进行静态类型检查
代码无非就是操作数据的指令序列,而程序则由代码与数据有机组成。
算法具有五个基本特征: 有穷性、确定性、输入、输出、有效性
一般的,满足单入口单出口条件的语句称为结构化的,使用结构化语句设计的程序称为结构化程序。
结构化程序设计的主要抽象工具是函数抽象
先整体后局部更易于把握事物的本质
不同结构化程序的质量是千差万别的,程序员在编程时就需要详细研究程序的实现策略,程序员的全部注意力都应该集中于此
事物是普遍联系的,程序员的任务就是找出它们之间的关系并予以实现,正是高效率编程的核心
对于循环体三问: 初始条件正确吗? 循环的终止条件正确吗? 循环的重复模式正确吗?
流程图
程序都可以使用 顺序 --- 选择 --- 循环三种结构流程来表示
函数与模块设计
- 一个函数使用另外一个函数的过程称为函数调用,即一个函数使用另一个函数提供的服务完成自己的功能
调用的函数称为主调函数/客户函数, 提供服务的函数成为被调函数/服务器函数
函数的声明: 也称为函数原型
- 函数的定义: 也就是函数的实现
- 函数的调用: 形参在函数调用发生时获得内存空间,进而可以接受想用实际参数的值
从整个函数调用栈框架的变化来看,发生函数调用时,程序只关心当前函数的调用环境,只要是函数调用内部环境,所能看到的所有东西都属于当前环境
Todo: 值传递与地址传值
库与接口设计
文件与数据存储
算法设计与分析
递归程序设计
数据抽象
算法与程序抽象
问题
- VC6.0++ 在xp以上的系统中打开文件或者导入文件到项目的功能闪退
FileTool.dll
在网盘中可下
Tools > Customize > Add-ins and Macro Files > Browse 'FileTool.dll' > 出现AO两个功能按钮即可,代替了原始的两个功能