預習《高質量嵌入式LinuxC編程》第二章有感

寫在前面:因爲學習需要,我開始寫一些書的讀後感,權且當作讀書筆記了。


一、從數據類型的角度解釋“靜中有動,動中有靜”

其值在其作用域內可以改變的量稱爲變量,是爲動。相反其值不會發生改變的量稱爲常量,是爲靜。他們之間相互依賴相互影響,所以是“靜中有動,動中有靜。


二、變量、變量名。變量值的定義是什麼?

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給三個變量定義別名

十一、枚舉和宏定義有什麼區別

十二、聯合體與結構的區別

發佈了32 篇原創文章 · 獲贊 41 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章