C Primer Plus學習 三十六 暫存器變數

2021-07-23 16:09:19 字數 580 閱讀 7545

通常,變數儲存在計算機記憶體中。如果幸運,暫存器變數可以被儲存在cpu暫存器中,或更一般地, 儲存在速度最快的可用記憶體中,從而可以比普通變數更快地被訪問和操作。因為暫存器變數多是存放在乙個暫存器而非記憶體中,所以無法獲得暫存器變童的位址。但在其他的許多方面,暫存器變數與自動變數是 一樣的。也就是說,它們都有**塊作用域、空鏈結以及自動儲存時期。通過使用儲存類說明符register可以宣告暫存器變數:

int main (void)

{register int quick; }

我們說「如果幸運」是因為宣告乙個暫存器類變數僅是乙個請求,而非一條直接的命令。編譯器必須 在您的請求與可用暫存器的個數或可用高速記憶體的數量之間做權衡,所以您可能達成不了自己的願望。這 種情況下,變數成為乙個普通的自動變數;然而,您依然不能對它使用位址運算子。

可以把乙個形式參量請求為暫存器變數。只需在函式頭部使用register關鍵字:

void macho (register int n)
可以使用register宣告的型別是有限的。例如,處理器可能沒有足夠大的暫存器來容納double型別。

c primer plus學習筆記

1.變數名命名規則 重要的 1 有含義 2 只能用字母字元 數字和下劃線 3 第乙個字元不能是數字 4 區分大小寫 5 不能用c 關鍵字 2.整型 1 無符合型別不能表負值 2 char short 16 int short long 32,int 和longlong 64,long c 11 寬度...

C PrimerPlus學習筆記

if語句中判斷恒等,將常量放前,防止由於 寫成 造成的難以查詢的bug。if 0 count 若寫成 0 count 會報錯,count 0 則不會命名空間 using namespace std cout one cout two std cout one std cout two using s...

C Primer Plus學習筆記

1.組合語言是特地的cpu設計所採用的一組內部指令的助記符,不同的cpu型別使用不同的cpu c給予你更多的自由,也讓你承擔更多的風險 自由的代價是永遠的警惕 2.目標 檔案 可執行檔案和庫 3.可以用畫幾個盒子的方式來跟蹤乙個程式的變數 一門語言的語法就是一套規則,用於管理這種語言中的合法語句組織...