Objective-C之成魔之路【13-預先處理程式】,objective-c13-

來源:互聯網
上載者:User

Objective-C之成魔之路【13-預先處理程式】,objective-c13-

郝萌主傾心貢獻,尊重作者的勞動成果,請勿轉載。

如果文章對您有所協助,歡迎給作者捐贈,支援郝萌主,捐贈數額隨意,重在心意^_^ 

我要捐贈: 點擊捐贈

Cocos2d-X源碼下載:點我傳送



預先處理提供了一些工具,使用這些工具更易於開發、閱讀、修改程式,

也易於將程式移植到不同的系統中。

你也可以使用預先處理程式定製Objective-C語言,以適應特定應用的編程或自己的編程風格。


預先處理程式是Objective-C編譯過程的一部分,它可以識別散布在程式中的特定語句。

預先處理程式使用井號#標記,這個符號必須是一行中的第一個非空格字元。


#define語句:

#define語句的基本用途之一就是給符號名稱指定程式常量。

預定義名稱不是變數。因此,不能為它賦值,除非替換指定值的結果實際是一個變數。

#define語句經常放在程式的開始,但#import或include語句之後。

預定義的名稱和變數的行為方式不同:沒有局部定義之類的說法。


所有預定義的名稱都用大寫,這樣容易區分一個名稱是變數名、對象名、類名,還是預定義名稱。


事實上,預定義名稱一出現,預先處理程式就執行文本替換,

這可以解釋為什麼通常不能使用分號結束#define語句的原因。


注意,重新定義底層語言文法的(#define AND &&)行為通常不是好的編程習慣,

而且不容易讓他人理解你的代碼。

如果需要第二行,那麼上一行的最後一個字元必須是反斜線。\


注意,在定義有參數的名稱時,預定義名稱和參數列表的左括弧之前不允許空格。

後面使用參數的地方要用括弧括起來。

#define SQUARE(x)   ((x) * (*))


#import語句:

預先處理程式允許你將所有的定義收集到一個單獨檔案中,然後使用#import語句把它們包含在程式中。

這個主要能區別“”,和<>。“”是在本地路徑查詢,<>是在系統路徑查詢。


條件編譯:

通常用於建立可以在不同的電腦系統上編譯啟動並執行程式,它還經常用來開關程式中的各種語句。

#ifdef, #endif, #else, #ifndef和#undef這些都和c語言一樣。

#ifdef DEBUG

#if defined (DEBUG)

作用是相同的。

#undef用於消除已經定義的名稱



用objective-c編一個程式輸入任意數,輸出每位對照的英文,但遇到問題

哈哈,又是你。上次的問題忘了給你寫了。這次寫一下。既然你說你是學oc的,我就用oc寫。C語言我文法記不清楚了,這個使用控制台寫的,直接複製代碼就行。別忘了採納哦~另外的問題也要採納哦親~~~

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])

{

@autoreleasepool {

char str[1000];//申明一個char類型數組,也就是字串

scanf("%s",str);//接收鍵盤輸入的內容

NSString *oc_string = [NSString stringWithFormat:@"%s",str];//將C語言格式的字串轉化為OC格式的字串

NSString *oc_tmp_str = oc_string;//將轉化完的字串複製一份

for (int i = 0; i < oc_string.length; i ++) {//做個迴圈,次數上限為字串長度

NSRange range = {1,2};

NSString *str = [oc_tmp_str substringToIndex:range.location];//取字串第一位,賦值給str

oc_tmp_str = [oc_tmp_str substringFromIndex:range.location];//將第二位到最後以為重新賦值給oc_tmp_str,用作下次迴圈種截取第一位,如此迴圈到結束即可。

switch ([str intValue]) {

case 0:

NSLog(@"zero\n");

break;

case 1:

NSLog(@"one\n");

break;

case 2:

NSLog(@"two\n");

break;

case 3:

NSLog(@"three\n");

break;

case 4:

NSLog(@"four\n");

break;

case 5:

NSLog(@"five\n");

break;

......餘下全文>>
 
Objective-C20程式設計與 Objective-C 基礎教程 不同

objective-c2.0這本書重點講的是objective-c語言,還算詳細
基礎教程簡單介紹了下ob-c注重將的是介面設計,各種互動,還有動畫設計之類。
建議先看程式設計。介面之類的邊看邊寫。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.