首页 > 代码库 > C语言学习中容易模糊的一些概念

C语言学习中容易模糊的一些概念

1、什么叫分配内存

操作系统把某一块内存空间的使用权利分配给该程序

 

2、释放内存

操作系统把分配给该程序的内存空间的使用权利收回,该程序就不能再使用这块内存空间

注:释放内存空间并不是把这块内存的数据清空

 

3、变量为什么必须初始化

不初始化,则变量的初始值通常是垃圾值

注:

全局变量  静态变量初始值为0

局部变量,自动变量初始值随机分配

详见:http://blog.csdn.net/deqingguo/article/details/8001557

 

4、函数的优点

①避免重复性操作

②有利于程序的模块化

 

5、什么是指针、什么是地址、什么是指针变量,三者之间有什么关系

①指针:内存地址(内存单元的编号)

②地址:内存地址(内存单元的编号)

注:指针和地址是一个概念

③指针变量是存放内存单元编号的变量

注:指针变量和指针是完全不同的两个概念,只不过人们通常把指针变量简称为指针

 

6、静态变量和动态变量的异同

①相同点:都需要分配内存

②不同点:静态变量是由系统自动分类,自动释放,程序员无法在程序运行过程中手动分配,也无法在程序运行中手动释放

静态变量是在栈中分配的(动态变量是在堆中分配的),函数终止后,静态变量的储存空间才会被系统自动释放

C语言学习中容易模糊的一些概念