C++学习笔记(4)——结构化程序设计

本文探讨了结构化程序设计的基本概念,包括函数定义与调用、数据参数化、变量作用域等内容,并深入讨论了函数间参数传递的不同方式及其应用场景。

第五章 结构化程序设计之一

❤ 2018.5.1

今天是五一劳动节哈哈哈

○ 结构化程序设计方法







○ 函数的定义和调用



♣ 将数据提炼出来形成变量,这种做法叫做数据参数化。


○ return语句




○ 函数的声明



❤2018.5.9

○ 数据的管理策略



○ 变量的作用域





♣ 函数定义和函数声明是不一样的,声明可以不定义。


○ 全局变量可以通过外部声明语句延伸作用域


○ 重名变量的局部优先原则



我有个问题:主函数调用的函数里可不可以直接用主函数里声明的局部函数?前面好像说需要通过形参进行传递,所以应该是不能吧。。。


❤ 2018.5.12

○ 程序代码和变量的存储原理



○ 动态内存分配




○ 函数指针





○ 函数间参数传递的3种方式


○ 值传递





○ 引用传递



定义形参时在前面加 &(引用说明符) 就定义了一个引用变量。



○ 指针传递


形参前面加 * (星号) 定义成指针变量




○ 在函数间传递数组


例:




❤ 2018.5.26

〇 C++源程序的多文件结构



○ 声明外部函数与外部全局变量


♣ 外部函数声明可以不加extern ,外部全局变量声明必须加extern且不可以初始化。





♣ 静态局部变量的声明和初始化语句只在程序初始化时被执行一次,后面即使多次调用该函数也不会被重新声明及初始化,而是会保留上一次函数运行后的数值。


○ 头文件




♣ 所以说头文件中可以只有声明而没有定义,定义都在和头文件同名的cpp文件里。


〇 编译预处理指令






♣ 无参宏主要用来定义符号常量



♣ 注意宏定义里运算符优先级的问题(见上)

○ 空宏和宏删除



○ 条件编译指令






〇 几种特殊形式的函数

○ 带默认形参值的函数







○ 重载函数



○注意事项



○ 内联函数



○ 注意事项



○ 主函数main





○ 注意


♣ 因为VS同时支持ANSi和unicode两种编码,使用_tmain可以方便的在两种编码中切换(不懂。。。)

♣ 加system("pause");可以暂停程序运行,查看运行结果。

♣ 当开发windows图形界面程序时,要把主函数改成WinMain()或者tWinMain()。


○ 递归函数


○ 递推与递归









♣ 把一个具体的问题用代码表示出来,感觉好神奇!




〇 系统函数










○ 数学公式函数




○ 动态内存分配函数



○ 命名空间



♣ ::作用域分辨符


○ C++语言中的系统函数



○ C++语言的系统类库





〇 自定义数据类型



♣ 可枚举:大概意思就是有有限个能被列出来,比如一周有星期一到星期日,就是可枚举的(?)




○ 联合体类型



○ 联合体类型定义:




♣ 联合体也叫共用体


○ 结构体类型





○ 结构体指针变量


♣ 这个的意思是:访问指针变量p所指向的结构体变量成员“ID”

结构化程序设计简介   •结构化程序设计方法主张按功能来分析系统需求,其主要原则可概括为自顶向下,逐步求精,模块化等。结构化 程序设计首先采用结构化分析(Structrued Analysis,即SA)方法对系统进行需求分析,然后使用结构化设计 (Structrued Design,即SD)方法对系统进行概要设计、详细设计,最后采用结构化编程(Structrued Program,即SP)方式来实现系统。使用这种SA、SD和SP的方式可以较好的保证软件系统的开发进度和质量。   •因为结构化程序设计方法主张按功能把软件系统逐步细分,因此这种方法也被成为面向功能的程序设计方法;结 构化程序设计的每个功能都负责对数据进行一次处理,每个功能都接受一些数据,处理完后输出一些数据,这种处理方 式也被称为面向数据流的处理方式。 结构化程序设计的局限性    •设计不够直观,与人类习惯思维不一致。采用结构化程序分析、设计时,开发者需要将客观世界模型分解成一个 一个功能,每个功能用以完成一定的数据处理。   •适应性差,可扩展性不强。由于结构化设计采用自顶而下的设计方式,所以当用户的需求发生改变,或需要修改 现有的实现方式时都需要自顶而下地修改模块结构,这种方式的维护成本相当大。 程序的三种结构      •结构化程序设计非常强调实现某个功能的算法,而算法的实现过程是由一系列操作组成的,这些操作之间的执行 次序就是程序的控制结构。1996年,计算机科学家Bohm和Jacopini证明了这样的事实:任何简单或复杂的算法都可 以由三种结构组成     –顺序结构     –选择结构     –循环结构这   •这三种结构就被称为程序设计的三种基本结构,也是结构化程序设计必须采用的结构 顺序结构 。。。。。。。。。。。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值