① 函式定義的語法形式:
資料型別 函式名(形式參數列) //形式參數列可空,但括號必須有
函式名定義時可以任意選取(在
取名規則允許的範圍內),main除外。
要點:1.
乙個函式只有乙個返回值 return (值或者表示式);
2. 函式只有在被呼叫的時候才會起作用。
② 函式的呼叫:
1. 傳值呼叫 (int a,int b)
傳值呼叫將實參資料傳給形參使用,使用時不會改變實參的數值。
2. 傳址呼叫 (int &a,int &b)
傳址呼叫將實參的位址傳給形參,這時形參的改變會影響實參的數值。
③ 區分 * 和 &:
*: 在說明語句中表示定義指標變數;
在其他語句中表示取目標內容;
&: 在說明語句中說明引用;
在其他語句中表示取位址;
例:int *p;//定義指標變數
int &x=y;//引用
p=&x;//取位址
y=*p;//取p指向的內容;
④乙個函式」返回「多個值的方法
1. 定義全域性變數,將函式視為計算過程,輸出計算結果即可
例(交換a,b的值,標頭檔案啥的我就不寫了):
int a,b;
int swap(int a,int b);
int main()
int swap(int a,int b)//定義了乙個已有函式,呼叫時會以自定義函式計算
輸入:1 2 輸出:2 1;
2. 使用指標
例(還是最簡單的交換數值):
void swap(int &a,int &b);
int main()
void swap
(int &a,int &b)
注意:過多地使用全域性變數會加大除錯難度,降低程式通用性,在執行全過程中一直占用記憶體單元
⑤指標呼叫陣列
指標指向陣列時,預設是指向陣列的第乙個值,在預設值加減即代表陣列位數向前或向後推移;
*p=p[0] *(p+1)=p[1] etc.
弄清楚 *
代表的含義:s*=*p;//第乙個 * 為
乘法表示式,第二個表示對應指標指向的內容。
學習總結 函式
小記 靜默如初,安之若素 定義在相同的作用域,定義同名的函式,但是它們的引數要有所區分,這樣的多個函式構成過載關係。注 函式的過載和返回值無關eg 影象庫 包含很多繪圖函式 c語言實現 c語言不能有同名函式 void drawcircle int x,int y,double r void draw...
函式的學習與總結
函式的學習與總結 經過這半個月的學習,我對c 中的函式有了乙個初步的理解。在我的認識中,c 中的函式實際上就是一種針對某種問題的解決方案,本質上就是一種演算法。正如數學中一般,我們會為了解決某個問題寫出解析式,然後向解析式中帶值。在c 中,我們也需要為解決某個問題寫出演算法,然後向裡面帶引數。inc...
函式學習總結
1.為什麼定義函式,使用函式 在程式的設計過程中,會在許多地方出現想同的 為了減少 數量,讓程式變得更加美觀,此時可以將這段程式單獨作為乙個整體,並用識別符號起乙個名字,當時使用時,直接呼叫函式名即可。這段程式叫作子程式,就是我們所說的函式。2.函式的定義 1 定義的語法形式 資料型別 函式名 形式...