C語言關鍵字第四章 型別修飾符

2021-10-04 19:39:04 字數 494 閱讀 8513

對記憶體資源存放位置的限定,即資源屬性中位置的限定

1.1 定義:限制變數定義在棧空間上的修飾符

在定義乙個變數後,預設變數分配的記憶體可讀可寫的區域(棧空間)

即:int a;==auto int a;

區域如果在{}裡面,預設資料儲存在棧空間。

2.1 定義:限制變數定義在暫存器上的修飾符

2.2 特點:

1.定義一些快速訪問的變數。

2.編譯器會盡量的安排cpu的暫存器去存放這個變數,如果暫存器空間不足,變數還是儲存在儲存器中。

3.不能取變數位址。

3.1 定義:靜態變數

3.2 應用場景:

修飾3種資料:

1)函式內部變數

int fun()

2)修飾函式外部變數

int a;====>static int a;

int fun()

優化編譯時,檢測a在軟體中不修改,則不進行取a位址操作,直接進入if判斷。

型別修飾符volatile關鍵字

volatile關鍵字是一種型別修飾符,用它宣告的型別變數表示可以被某些編譯器未知的因素更改,比如 作業系統 硬體或者其它執行緒等。遇到這個關鍵字宣告的變數,編譯器對訪問該變數的 就不再進行優化,從而可以提供對特殊位址的穩定訪問。使用該關鍵字的例子如下 int volatile nvint 當要求使...

關鍵字 型別修飾符 8

資源分類 有些記憶體是可讀的有些是可寫的,我們一般定義的char a,就是auto char a,就是自動變數,所謂普通變數就是在記憶體中可讀可寫中分配的一塊區域,如果這個變數定義在函式體中,我們認為這個自動變數實在棧空間中,記憶體分配的位置實際上跟某些 的執行流程有關係,比如手機開機的畫面,這種的...

c語言的關鍵字之修飾符

const修飾的是在它前面的型別,如果它前面沒有型別,那它修飾的是緊跟著它的那個型別。const type name value 或 type const name value 復引用運算子 dereferencing operator 常稱為間接運算子 indirection operator 返...