文章目錄
接上一節的資料類型,運算式。
一個long double類型的常量通常會寫成像浮點數常量的樣子,在末尾加上大寫或者小寫L。如下:1。234e+7L
要顯示一個long double型的數字,需要用到L修飾符。所以%Lf將顯示一個 long double值的浮點標記法。%Le 在科學計數法的時候將顯示同樣的值。同樣的%Lg將告訴NSLog 將在%Lf核%Le中選擇。
加在int定義前面的短修飾符告訴objective-c編譯器,這個變數將會存放較小的數值。使用短修飾符的是因為它是節約記憶體的一個重要方法。當程式需要大量記憶體而可用的記憶體量又十分有限時,記憶體使用量方面將是一個大問題。
部分機器中,一個短int型在記憶體佔用方面是普通int型的一半。任何情況下你都不能分配給一個短int型的低於16bits。
在objective-c中不存在將一個常量寫成短int型 的方法。要顯示一個短int型的變數,將字母h放在那些普通的整形變數前面。如:%hi,%ho或者%hx。另外,你可以使用任一數字字元表示短int型的數字因為在他們被當做NSLog中的參數時將被轉換為數字。
你可以使用u和l的聯合表示一個整形常量。如:20000UL 將告訴編譯器將常量20000看做是無符號長整形。
一個整形常量將不會有U,L跟隨,它對於被編譯器看做是無符號整形的普通整形來說太大了。如果仍然無法裝進一個long int,編譯器將產生一個無符號long int。
當定義像long int ,short int,或者unsigned int之類的變數時,你可以省略int關鍵字。因此,無符號變數counter可以等同定義為:unsigned counter;
你同樣可以將char變數定義為unsigned的。
id類型
id資料類型通常用來存放物件類型。在某種意義上,它是一個通用物件類型。舉例下面一行代碼將定義一個id型的變數number:
id number;
方法的傳回值可以唄定義為id類型,如:
-(id)newObject:(int) type;
這定義了一個叫做newObject的執行個體方法,它只有一個叫做type的,傳回型別為id的參數。
中列出了基礎資料類型和修飾符。
算術運算式
在objective-c中,正如所有的程式語言一樣,加好(+)用來計算兩個值相加,減號(-)通常計算兩個值之間的差,乘號(*),除號(/)也表示相應的意思。
操作優先順序
你已經看到了如何在objective-c中執行一個簡單的加法運算。接下來將說明減法、乘法、除法的操作。後兩種運算將會擁有高的優先順序。這塊不多介紹了基本都相同。
下面用一個計算機類用來示範。我們準備編寫一個計算機類,包含4個簡單的方法。分別為加減乘除。
定義檔案
實現
main函數