久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

子程序

來自站長百科
尋找討論 | 貢獻(xiàn)2012年4月10日 (二) 11:58的版本 (以內(nèi)容“'''子程序'''就是能被其他程序調(diào)用,在實(shí)現(xiàn)某種功能后能自動(dòng)返回到調(diào)用程序去的程序。其最后一條指令一定是返回指令,故能...”創(chuàng)建新頁面)
(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉(zhuǎn)至: 導(dǎo)航、? 搜索

子程序就是能被其他程序調(diào)用,在實(shí)現(xiàn)某種功能后能自動(dòng)返回到調(diào)用程序去的程序。其最后一條指令一定是返回指令,故能保證重新返回到調(diào)用它的程序中去。也可調(diào)用其他子程序,甚至可自身調(diào)用(如遞歸)。在計(jì)算機(jī)科學(xué)中,子程式是一個(gè)大型程式中的某部份程式碼,由一個(gè)或多個(gè)語句塊組成。它負(fù)責(zé)完成某項(xiàng)特定任務(wù),而且相較于其他程式碼,具備相對的獨(dú)立性。一般會(huì)有輸入?yún)?shù)并有返回值,提供對過程的封裝和細(xì)節(jié)的隱藏。這些代碼通常被整合為軟件庫。函數(shù)在面向過程的語言中已經(jīng)出現(xiàn)。是結(jié)構(gòu)(Struct)和類(Class)的前身。本身就是對具有相關(guān)性語句的歸類和對某過程的抽象。

子程序分類[ ]

  • 子程式(subroutine)是一個(gè)概括性的術(shù)語,任何高階程序所呼叫的程序,都被稱為子程式。它經(jīng)常被使用在組合語言層級上。子程式的主體(body)是一個(gè)程式碼區(qū)塊,當(dāng)它被呼叫時(shí)就會(huì)進(jìn)入執(zhí)行。
  • 函數(shù)(function)是一種子程式,利用函數(shù)名稱,可以接收回傳值。例如:
c = max (a,b);
  • 程序(procedure)是一種子程式,它能夠接受不同的引數(shù),來執(zhí)行某些特別的動(dòng)作。例如:
printf("Hello World\n")

函數(shù)與程序在某些編程語言中是被分開的,但是在C語言中,所有程序都是函數(shù),這兩者被認(rèn)為是相同的。這有可能造成一些副作用,特別是在回傳值是void型別時(shí)。在面向?qū)ο?a href="/wiki/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1" title="程序設(shè)計(jì)">程序設(shè)計(jì)語言中,類別或物件中的子程式,被稱為方法(method)。

子程序的作用[ ]

  1. 降低復(fù)雜性:使用子程序的最首要原因是為了降低程序的復(fù)雜性,可以使用子程序來隱含信息,從而使你不必再考慮這些信息。
  2. 避免代碼段重復(fù):無可置疑,生成子程序最普遍的原因是為了避免代碼段重復(fù)。
  3. 限制改動(dòng)帶來的影響:由于在獨(dú)立區(qū)域進(jìn)行改動(dòng),因此,由此帶來的影響也只限于一個(gè)或最多幾個(gè)區(qū)域中。要把最可能改動(dòng)的區(qū)域設(shè)計(jì)成最容易改動(dòng)的區(qū)域。最可能被改動(dòng)的區(qū)域包括:硬件依賴部分、輸入輸出部分、復(fù)雜的數(shù)據(jù)結(jié)構(gòu)和商務(wù)規(guī)則。
  4. 隱含順序:把處理事件的非特定順序隱含起來是一個(gè)很好的想法。
  5. 改進(jìn)性能:通過使用子程序,可以只在一個(gè)地方,而不是同時(shí)幾個(gè)地方優(yōu)化代碼段。把相 同代碼段放在子程序中,可以通過優(yōu)化這一個(gè)子程序而使得其余調(diào)用這個(gè)子程序的子程序全部 受益。把代碼段放入子程序也使得用更快的算法或執(zhí)行更快的語言(如匯編)來改進(jìn)這段代碼 的工作變得容易些。
  6. 進(jìn)行集中控制
  7. 隱含數(shù)據(jù)結(jié)構(gòu)
  8. 隱含指針操作
  9. 隱含全局變量
  10. 促進(jìn)重新使用代碼段
  11. 計(jì)劃開發(fā)一個(gè)軟件族
  12. 改善某一代碼段可讀性
  13. 改善可移植性
  14. 分隔復(fù)雜操作
  15. 獨(dú)立非標(biāo)準(zhǔn)語言函數(shù)的
  16. 簡化復(fù)雜的布爾測試

相關(guān)詞條[ ]

參考來源[ ]