將代碼段封裝成函數的過程叫做函數定義。
創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網站建設、成都網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯(lián)網時代的射洪網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
函數可以重復使用的代碼,用來獨立地完成某個功能,它可以接收用戶傳遞的數據,也可以不接收。接收用戶數據的函數在定義時要指明參數,不接收用戶數據的不需要指明,根據這一點可以將函數分為有參函數和無參函數。
相關概念:
函數不能嵌套定義,main 也是一個函數定義,所以要將 sum 放在 main 外面。函數必須先定義后使用,所以 sum 要放在 main 前面。
函數定義時給出的參數稱為形式參數,簡稱形參;函數調用時給出的參數(也就是傳遞的數據)稱為實際參數,簡稱實參。函數調用時,將實參的值傳遞給形參,相當于一次賦值操作。
原則上講,實參的類型和數目要與形參保持一致。如果能夠進行自動類型轉換,或者進行了強制類型轉換,那么實參類型也可以不同于形參類型,例如將 int 類型的實參傳遞給 float 類型的形參就會發(fā)生自動類型轉換。
除了下面的,都可以使用auto :聲明自動變量 一般不使用
double :聲明雙精度變量或函數
int: 聲明整型變量或函數
struct:聲明結構體變量或函數
break:跳出當前循環(huán)
else :條件語句否定分支(與 if 連用)
long :聲明長整型變量或函數
switch :用于開關語句
case:開關語句分支
enum :聲明枚舉類型
register:聲明積存器變量
typedef:用以給數據類型取別名(當然還有其他作用)
char :聲明字符型變量或函數
extern:聲明變量是在其他文件正聲明(也可以看做是引用變量)
return :子程序返回語句(可以帶參數,也看不帶參數)
union:聲明聯(lián)合數據類型
const :聲明只讀變量
float:聲明浮點型變量或函數
short :聲明短整型變量或函數
unsigned:聲明無符號類型變量或函數
continue:結束當前循環(huán),開始下一輪循環(huán)
for:一種循環(huán)語句(可意會不可言傳)
signed:生命有符號類型變量或函數
void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)
default:開關語句中的“其他”分支
goto:無條件跳轉語句
sizeof:計算數據類型長度
volatile:說明變量在程序執(zhí)行中可被隱含地改變
do :循環(huán)語句的循環(huán)體
while :循環(huán)語句的循環(huán)條件
static :聲明靜態(tài)變量
if:條件語句
函數是用戶與程序的接口,在定義一個函數前,首先要清楚以下三個問題。1) 函數的功能實現(xiàn)及算法選擇。算法選擇會在后續(xù)文章詳細講解,本節(jié)重點關注函數的功能實現(xiàn)。一般選取能體現(xiàn)函數功能的函數名,且見名知意,如求和函數的函數名可取為 add,求最大值的函數名可取為 max,排序函數可取名為 sort 等。2) 需要用戶傳給該函數哪些參數、什么類型,即函數參數。3) 函數執(zhí)行完后返回給調用者的參數及類型,即函數返回值類型。 函教定義格式 函數定義的一般格式為: 返回類型 函數名 (類型參數1,類型參數2,…) {函數體 }也可以不含參數,不含參數時,參數表中可寫關鍵字 void 或省略,為規(guī)范起見,教程中對沒有參數的函數,參數表中統(tǒng)一寫 void。例如: 類型 函數名 () {函數體 }等價于: 類型 函數名 (void) //建議的書寫方式 {函數體 } 如果該函數沒有返回類型,則為 void 類型。例如: void add (int x,int y) {printf ("sum=%d\n", x+y); } 除了 void 類型外,在函數體中,均需要顯式使用 return 語句返回對應的表達式的值。 函教返回值 函數的值是指調用函數結束時,執(zhí)行函數體所得并返回給主調函數的值。 關于函數返回值說明如下。1) 帶返回值的函數,其值一般使用 return 語句返回給調用者。其格式為: return 表達式;或者 return (表達式);例如: int add (int a, int b) {return (a + b); //return 后為表達式 } 函數可以含一個或多個 return 語句,但每次調用時只能執(zhí)行其中一個 return 語句。例如,求整數絕對值的函數: int f (int n) //含多個return語句,但每次調用只執(zhí)行一個 {if (n = 0)return n;elsereturn -n; }
有區(qū)別的,函數聲明以分號結尾,函數定義后跟函數體
具體形式上可以相同,但聲明也可以用省略模式,比如:
int
f(int
a,int
b)
{
return
a+b;
}
其聲明可以是:int
f(int
a,int
b);
也可以是:int
f(int,int);
標題名稱:c語言函數的定義規(guī)則 c語言中函數的定義方法
路徑分享:http://jinyejixie.com/article34/dosghpe.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、響應式網站、全網營銷推廣、網站導航、品牌網站設計、微信小程序
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)