oc自學 預處理程式

2021-07-05 04:06:45 字數 1378 閱讀 8955

#define語句

#define true 1
定義了名稱true,並使它等於值1。之後,名稱true可以用於程式中任何需要常量1的地方。

預定義名稱不是變數,因此,不能為他賦值,除非替代指定值的結果實際上是乙個變數。

更高階的定義型別

#define two_pi 2.9 * pi

#define pi 3.141592654

規則就是,在程式中使用預定義名稱時,只要所有的負號都是定義過的,那麼就可以在定義中應用其他預定義的值

#define is_leap_year(y) ((y) % 4 == 0 && (y) % 100 != 0 \

|| (y) % 400 == 0 )

通常,預處理程式假設定義包含在程式的一行中。如果需要第二行,那麼上一行的最後乙個字元必須是反斜槓負號。

這種預定義通常稱為「巨集」。

#define square(x) x * x

y = square(v + 1); -> y = v + 1 * v + 1

#define square(x) ((x) * (x))

#import語句

條件編譯

#ifdef、#endif、#else和#ifndef語句

通過利用預處理程式的條件編譯能力,能夠減少對這些值的改變,並且能夠把每種機器關於這些定義的值結合到程式中。

#ifdef ipad

# define kimagefile @"barnhd.png"

#else

# define kimagefile @"barn.png"

#endif

允許在標誌預處理語句開始的#符號之後放置乙個或多個空格。

#if和#elif預處理程式語句

#undef語句

#undef ipad

這樣,將消除ipad的定義,之後的#ifdef ipad或#if define (ipad) 語句都將判斷為false。

oc自學 預處理程式

define語句 define true 1定義了名稱true,並使它等於值1。之後,名稱true可以用於程式中任何需要常量1的地方。預定義名稱不是變數,因此,不能為他賦值,除非替代指定值的結果實際上是乙個變數。更高階的定義型別 define two pi 2.9 pi define pi 3.14...

OC基礎9 預處理程式

1 關於 define語句 1 define語句的用途就是給某個符號名稱指定乙個程式要用到的常量,比如 define true 1 這個語句的意思就是把true指定為1,那麼後續的程式中如果需要用到1來做判斷或者計算,就可以直接使用true這個符號名稱了 2 預定義名稱不是變數,所以不能在程式過程中...

預處理程式

預處理提供了一些工具,使用這些工具更易於開發 閱讀 修改程式,也易於將程式移植到不同的系統中。你也可以使用預處理程式定製objective c語言,以適應特定應用的程式設計或自己的程式設計風格。預處理程式是objective c編譯過程的一部分,它可以識別散布在程式中的特定語句。預處理程式使用井號 ...