巨集定義學習

2021-07-11 23:43:35 字數 800 閱讀 1227

巨集定義學習

(1)巨集名一般用大寫

(2)使用巨集可提高程式的通用性和易讀性,減少不一致性,減少輸入錯誤和便於修改。例如:陣列大小常用巨集定義

(3)預處理是在編譯之前的處理,而編譯工作的任務之一就是語法檢查,預處理不做語法檢查。

(4)巨集定義末尾不加分號;

(5)巨集定義寫在函式的花括號外邊,作用域為其後的程式,通常在檔案的最開頭。

(6)可以用#undef命令終止巨集定義的作用域

(7)巨集定義不可以巢狀

(8)字串" "中永遠不包含巨集

(9)巨集定義不分配記憶體,變數定義分配記憶體。

(10)巨集定義不存在型別問題,它的引數也是無型別的。

1.巨集定義一定要加括號的原因是主要由於巨集定義是完全替換的。如果不加括號可能會導致在下面主函式的運算的過程中替換後不是我們要表達的原意

例如下面的**:

# include

#define year 365+2   //如果我們不加括號(365+2)那麼在下面的呼叫過程中就會發生源**中的問題,會先計算365+2*2 而我們原意要表達的                          

int main(void)       //是(365+2)*2

2.巨集定義表示一年中有多少秒:

預設情況小 巨集定義資料型別是整形的(即是int型別)所以在考慮巨集定義的時間應該注意他的型別的範圍

如果超出預設的整形型別的時候就需要強制型別轉換,比如下面的例子:

我們來用巨集定義一年的時間(s)

#define year ()ul

後面的ul 就是強制型別轉換。

巨集定義學習

巨集定義怎麼理解?關於巨集定義,把握住本質 僅僅是一種字元替換,而且是在預處理之前就進行。巨集定義可以包括分號嗎?可以,示例 如下 1 include2 using namespace std 34 define pi 3.14 巨集定義可以包括 56 void main 7 巨集定義一種新型別如何...

自定義學習 摩天輪原理

這個例子是從課堂上拿過來的 是乙個很好的例子,可以學習手勢識別,以及事件分發,特別是轉動速度和滑動之間的關係。public class skywheel extends relativelayout public skywheel context context,attributeset attrs...

從培訓的角度重新定義學習

在寫下這個標題的時候,就在想,如何將我們的學習跟工作結合起來。不至於讓我們感覺學習越學越累!下面就是自己從職業的角度去思考的學習。在不斷的培訓過程中加深自己對一些知識點的理解,這是自己的初衷。在進行在職研的學習過程中,總是想盡辦法去把自己所學習到的一些東西去向同事們分享。因為我明白,真正對於乙個知識...