函數的學習以及用法

來源:互聯網
上載者:User

標籤:import   函數應用   宏觀調控   

  淺談函數應用



函數存在的意義: 

把main函數中複雜的邏輯進行拆分,由一個一個單獨的函數來處理一個單獨的模組,main函數只是起到宏觀調控作用


我們可以自己編寫一些函數,實現某些功能,把函數的聲明放在.h檔案裡,把函數的定義即實現放在.m檔案裡,然後在main.m檔案裡的main函數裡調用實現,但是調用之前一定不要忘記把自己寫的檔案匯入即匯入標頭檔,匯入自己編寫的標頭檔用#import "",匯入系統標頭檔用#import <>


此外,一個函數最多不要超過60行代碼,20 到 40行最好,一個檔案裡程式碼數最多最好不要超過300行,如果過多了不太好找

 

2,  函數的定義 : 包含四部分
 1), 傳回值類型 (要返回的資料類型)
 2), 函數名 (給函數起一個名字用於唯一標識函數)  命名規範: 有多個單片語成,除了第一個單詞外,其餘     單   字首大寫 (工程名 也由單片語成,並且每個單詞首字母都應該大寫)
 3), 參數列表 (用來接收傳入的資料)
 4), 函數體 (函數真正的功能,實際做的操作)

 

3,  函數的使用分為三部分
 1), 函數的聲明,  (寫在.h檔案中)
 2), 函數定義, (函數的實現)(寫在.m檔案中)
 3), 函數的調用, (在main.m檔案中的main函數中實現調用)

 

函式宣告和函數定義相比,只是缺少了函數體,並且在最後加了分號

為了更清晰:     一個函數用來實現一個單獨的功能,在函數內部唯寫與函數功能有關的代碼即可

 

4,  函數定義有四種格式:


  1), 函數定義的第一種格式:  無參數,無傳回值   (無傳回值時用void)
 
void like ()
{
    printf("I like learning ios \n");
}
  2), 函數定義的第二種格式:  有參數,無傳回值   (無傳回值時用void)

  3), 函數定義的第三種格式:  無參數,有傳回值   有傳回值時
 int giveMoney()
{
    printf("繼續加油,\n");
    return 100; 
}

return 用於傳回值,將返回的資料放在return後面,  誰調用該函數,就將該值返回給誰
    切記不要把代碼放在return後面,會執行不到

 

 4),  函數定義的第四種格式:  有參數,有傳回值


5, 實參 與 形參


 實參是實際參數,真實的具體的值,即函數調用時給定的參數叫做實參
 形參是形式參數,只用來表示接收什麼類型的資料,具體的儲存資料未知,即在函數定義時給定的參數是形參
此外切記函數調用時,實參到形參的傳遞是一個拷貝的過程,   函數與函數之間可嵌套調用,但不可以嵌套定義;


6, 有關變數的範圍

在函數內部定義的變數,只能在函數內部有效,在函數外部,無權訪問,所以叫局部變數,(當函數調用時,為變數開闢空間,當函數執行完畢宏,系統回收空間 

全域變數,在所有函數中都可以訪問到,程式運行期間空間不收回

被static修飾的變數,為靜態變數,其特點為:
     1), 空間只開闢一次,而且在雲期間空間不回收
     2), 變數只初始化一次
     3), 如果不賦初值,預設為0;


本文出自 “個人ios成長史” 部落格,請務必保留此出處http://9178463.blog.51cto.com/9168463/1529952

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.