黑马程序员---C语言学习笔记之五
来源:互联网 发布:中国地理拼图软件 编辑:程序博客网 时间:2024/05/16 09:58
------- android培训、java培训、期待与您交流! ----------
1.位段(位域)
使用伪指令#pragma pack (n),编译器将按照 n 个字节对齐;使用伪指令#pragma pack (),取消自定义字节对齐方式。
2.隐式声明,一切未知的类型C都看成int
3.在头文件里面声明全局变量,在某个.c文件中定义这个全局变量
4.静态变量static
静态局部变量: 静态局部变量就会一直保留,直到这个程序结束
普通的局部变量在函数调用结束后,空间就被释放了
创建静态局部变量的语句只会被调用一次,只分配一次空间
5.寄存器变量register
CPU中的寄存器存取速度非常快,所以如果想把一个变量放到寄存器中,可以用register声明
register只是一个请求,由于CPU的寄存器个数是有限的,而且很多寄存器都有特殊的用途,所以用register声明的变量未必会被放到寄存器中
6.不稳定变量volatile 程序中每次使用变量就读取一次变量的值
7.外部变量extern
在A文件中,如果想要使用B文件中的全局变量,就要在A文件中用extern来说明这个在B文件中声明的全局变量
8.全局变量: 在所有函数之外定义的变量, 如果没有被初始化, 会自动初始化为0
由于任何地方都可以修改它, 可能会造成混乱, 所以推荐尽量不使用全局变量
9.局部变量: 在小范围内定义的变量, 出了这个范围就无法使用. 如果没有初始化, 则值是不确定的
不要在程序中返回局部变量的地址
10.各种变量的作用域与可见性
1)局部变量 作用域和可见性均为声明它的语句块
2)静态局部变量 作用域为程序执行期间,可见性为声明它的语句块
3)全局变量 作用域和可见性均为程序执行期间
4)静态全局变量 作用域和可见性均只在本文件中
5)外部变量 作用域和可见性均为程序执行期间
6)常量 作用域和可见性均为声明它的语句块
变量的作用范围规则是局部优先,即如果变量有同名现象,小范围的变量优先使用
全局变量和静态变量会自动初始化为0
11.函数的调用
每次执行函数都会重新创建一份函数内部的形参和所有变量, 函数执行结束以后, 总是会回到调用它的地方,如果函数有返回值会把返回值带回到调用处
函数中的形参与函数内的变量是保存在栈中的, 函数执行结束后,这些变量就被释放了
12.递归函数
在程序体中调用它自身的函数称为递归函数,要注意的是递归函数必须有结束的条件,并且该条件一定能够满足
它可以把复杂的问题转化成简单的问题,把大规模的问题化为小规模的问题,但是到最简单,最小规模的时候,必须要解决问题
13.函数的默认参数:
1)函数的形参可以指定默认值,在指定默认值之后,可以不必为有默认值的形参传递参数
2)函数在调用的时候,是按照从左到右的顺序在匹配参数
3)默认值一定要是常量,并且要是连续的
4)如果声明时指定默认值,则定义时不能再指定
0 0
- 黑马程序员---C语言学习笔记之五
- 【黑马程序员】C语言学习笔记之变量与内存(五)
- 黑马程序员-C语言基础学习(五)
- 黑马程序员--------------------------------------------C语言学习记录五
- 【黑马程序员】C语言学习笔记之函数(八)
- 【黑马程序员】C语言学习笔记之数组(九)
- 【黑马程序员】C语言学习笔记之错题集
- 【黑马程序员】C语言学习笔记之指针(十一)
- 【黑马程序员】C语言学习笔记之字符串(十)
- 【黑马程序员】C语言学习笔记之枚举(十三)
- 【黑马程序员】C语言学习笔记之typedef(十五)
- 【黑马程序员】Objective-C语言学习笔记之小知识点
- 黑马程序员---C语言学习笔记之二
- 黑马程序员---C语言学习笔记之三
- 黑马程序员---C语言学习笔记之四
- 黑马程序员---C语言学习笔记之六
- 黑马程序员-------c语言学习笔记之基础知识储备
- 黑马程序员-------c语言学习笔记之流程控制
- 编写一个函数,将一个数字字符串转换成该字符串对应的数字(包括正整数,负整数)
- FTP命令
- 线程创建的两个方式
- cmdUtils
- thinkPHP事务支持
- 黑马程序员---C语言学习笔记之五
- 2015 百度一面 总结记录
- Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class
- IO多路复用之epoll总结
- 图像批处理常用命令
- 用Meta工具查看IMEI和IMEISV保存的位置
- 10亿内素数个数及总和
- 去掉标题栏图标
- 贝叶斯