原型聲明——告訴編譯器有這么一個原型(編譯器在掃描到它時會作一個記錄)。
在金華等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網(wǎng)站建設、成都做網(wǎng)站 網(wǎng)站設計制作按需定制設計,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,成都品牌網(wǎng)站建設,營銷型網(wǎng)站建設,成都外貿網(wǎng)站制作,金華網(wǎng)站建設費用合理。
在引用到這么一個原型時,編譯器會檢查記錄中有無此原型,如果無此原型,編譯器就不知道這是個什么玩意兒,并報錯——error:undefined:"***",也就是未定義的意思。
注意,你聲明的原型也是有作用域的——在一個函數(shù)中聲明的原型(我把它叫局部的原型聲明),不可以在另一個函數(shù)中使用,只能在本函數(shù)內使用。
LS給的鏈接有些地方?jīng)]說清楚。
C/C++中的函數(shù)原型是指函數(shù)聲明的形式:
返回值類型 函數(shù)名(參數(shù)列表);。注意分號是函數(shù)原型的組成部分,去掉分號的部分可以稱為函數(shù)頭,是函數(shù)定義的起始部分。
這里的參數(shù)列表和定義中的列表語法形式相同,其中的參數(shù)是形式參數(shù),只需要指定類型,名稱可有可無。形式是以下任意一種:
1.空——C中表示接受任意參數(shù),C++中表示接受0個參數(shù);
2.“void”——C中接受0個參數(shù),C++中可省略;
3.“類型名 參數(shù)名,”,或者以上形式的重復,但末尾不能有逗號;參數(shù)名會被編譯器無視,不必和定義一致;
4.“...”——用于C++,表示接受任意參數(shù)。
函數(shù)原型作為聲明,作用是提示編譯器,作為標識符的函數(shù)名,在聲明之后或外部編譯單元/庫文件存在定義,以抑制編譯器遇到這個標識符時產(chǎn)生標識符未定義的編譯錯誤。原型作為語法技術的提出,出發(fā)點就在于這個作用,利用它可以方便地定義互相遞歸的函數(shù),以及引用外部庫文件的符號。
====
[原創(chuàng)回答團]
函數(shù)原型就是函數(shù)本身定義的形式。
函數(shù)的格式為:
return_type func_name(arg_list);
所以函數(shù)的原型,就是根據(jù)函數(shù)名查找到的定義或者聲明的形式,通過原型可以確認函數(shù)的返回值類型(return_type),以及需要多少個參數(shù),每個參數(shù)的類型是什么(arg_list)。
這樣才能夠確定,如何調用函數(shù)才是正確的。
1、c語言中我們通常把函數(shù)的聲明叫做函數(shù)的原型。
2、c語言中把函數(shù)的定義叫做函數(shù)的實現(xiàn)。
3、函數(shù)是C/C++程序的基本模塊??蓪⒁恍┕δ芟鄬Κ毩⒌幕蚪?jīng)常使用的操作或運算抽象出來,定義為函數(shù)。使用時只要考慮其功能和使用接口即可。在結構化程序設計中,函數(shù)是將任務進行模塊劃分的基本單位。在面向對象的程序設計中,類中所封裝的操作是用函數(shù)進行描述的,因此函數(shù)在C++程序中具有非常重要的意義。