预习《高质量嵌入式LinuxC编程》第二章有感

来源:互联网 发布:软件开发报价模板 编辑:程序博客网 时间:2024/06/05 07:32

写在前面:因为学习需要,我开始写一些书的读后感,权且当作读书笔记了。


一、从数据类型的角度解释“静中有动,动中有静”

其值在其作用域内可以改变的量称为变量,是为动。相反其值不会发生改变的量称为常量,是为静。他们之间相互依赖相互影响,所以是“静中有动,动中有静。


二、变量、变量名。变量值的定义是什么?

1、其值在其作用域内可以改变的量称为变量

2、在变量声明时用的名字成为变量名,该名字和内存中一块地址绑定,可以通过变量名直接找到该内存区域

3、变量所对应的内存区域内存放的二进制序列是变量值


三、局部变量、全局变量的定义及命名方式

在函数内做定义说明的变量是局部变量,在函数外做定义说明的变量是全局变量,在同一个源文件中,局部变量与全局变量同名,则在局部变量的作用域内外部变量被屏蔽

int  a,b;        /*全局变量a,b*/

void f1()

{

   int  x,y;     /*局部变量x,y*/

}


四、常量的定义

其值不会发生改变的量称为常量


五、简述6个数据的基本内置类型

1、整型int,又分为长整型和短整型以及无符号整型

2、实型,又称为浮点型,有双精度、长双精度和单精度之分

3、指针型,取程序对象在内存中占据的地址为值的一种特殊的数据类型

4、构造类型,若干个相关数据组合在一起的复杂数据类型

5、枚举型,当变量支取少数可能的值,并分别用标识符来表示的变量类型

6、void型,可表示没有数据也可表示某种任意类型数据、


六、陷阱:有符号和无符号是什么意思?

计算机底层是无法识别负号的,所以约定最高位为1是负数,最高位为0是正数。


七、什么是声明?什么是定义?

1、声明:指的是告诉编译器这个名字已经匹配到一块内存上了

2、定义:是编译器创建一个对象,为这个对象取一个名字。

int i;      //定义

extern int i;    //声明


八、static和extern

1、static:static修饰变量时其作用域没有发生改变,而是将其存放至静态数据区,其生命周期一直持续到整个程序执行结束

2、extern:使当前变量不是在本源文件中声明的,是外部变量


九、简述conest、auto、register

1、conest:被conest修饰的变量意味着只能访问这个变量而不能修改这个变量的值

2、auto:如字面意思,自动,int a;相当于auto int a;

3、register:被register修饰的变量会作为一个寄存器变量,使得该变量的访问速度达到最快


课上求解:

十、如何用typedef给三个变量定义别名

十一、枚举和宏定义有什么区别

十二、联合体与结构的区别

原创粉丝点击