c語言之函式的呼叫

2021-10-10 12:48:20 字數 1579 閱讀 7018

c語言中函式的呼叫目的就是為了簡化**,能夠讓**重複使用,且使**看起來便於理解

格式:    返回值型別    函式名(形式引數列表)此段**是用來求兩數之和的,我們可以看到此時並沒有用到函式的呼叫,那麼該怎麼進行修改呢?此時我們給出另一段**:

#define _crt_secure_no_warnings 1

#includeint add(int a,int b)//add方法為子函式

int add1(int a, int b, int c)/*此處其實也可以直接寫return a+b+c

只是在這裡我們更強調方法的乙個重複呼叫*/

int main()//main方法為主函式

int add(int a,int b)//add方法為子函式

此時我們定義了乙個名為add的函式(add為子函式,而main函式為主函式),其引數為兩個整形變數a,b,返回值型別為int,我們將所需要相加的兩個數放入形參中,並用sum來作為返回值,此時我們便定義了乙個求兩個數之和的和函式add.

int add1(int a, int b, int c)/*此處其實也可以直接寫return a+b+c

只是在這裡我們更強調方法的乙個重複呼叫*/

此時我們定義了乙個名為add1的函式(add1為子函式,而main函式為主函式),其引數為三個整形變數a,b,c,返回值型別為int,我們將所需要相加的三個數放入形參中,注意此時我們可以有兩種寫法:1.我們可以直接返回a+b+c. 2.我們可以先呼叫add方法將其中的兩個數相加後賦給乙個int變數sum1,然後再呼叫add方法將之前定義的int變數sum1與剩餘的數字相加,相當於重複呼叫我們一開始所定義的add方法,最後把兩者相加的值賦給sum2,最終返回的新的整形變數sum2便是我們所求的三數之和,此時我們便定義了乙個求三個數之和的和函式add1.,其核心思想便是函式的重複呼叫。

下面我們來看主函式**:

int x = 10;

int y = 20;

int z = 30;

int sum1 = add(x, y);/*方法的呼叫:1.注意使用函式名進行呼叫

2.對應的引數型別以及個數都要匹配

3.如果當前函式是有返回值的,則一定要接收它的返回值*/

int sum2 = add1(x, y, z);

printf("x與y的和為%d\n", sum1);

printf("x,y,z的和為%d\n", sum2);

return 0;

此時我們便可以開始測試我們所寫的函式是否正確,此時我們給出三個整數分別為10,20,30,此時我們計算出x與y的和為30,x+y+z的和為60,說明函式編寫無誤,

下面來看執行結果:

C語言之函式呼叫

c 語言之函式呼叫 棧幀 學過彙編的都知道在彙編中子程式呼叫是怎樣實現的 那高階語言中的函式呼叫是怎樣實現的?通過棧幀,什麼是棧幀?棧幀是函式呼叫的過程記錄 棧幀是怎麼實現的?有如下 反彙編 如下 我們發現在call 指令呼叫 add函式前進行了兩次 push 操作把add 函式所需的引數壓入棧中,...

linux下C語言之呼叫簡單函式

今天我們來學習下簡單的自定義函式。下面是個最簡單的自定義函式,列印乙個空行 void newline void 然後我們在主函式裡面呼叫它,看下效果,首先新建乙個檔案,two.c root localhost vi two.c include void newline void int main v...

C語言之函式

1.前導程式 2.函式概述 1 列印乙個信頭 2 include3 include 4 define name gigathink,inc.5 define address 101 megabuck plaza 6 define place megapolis,ca 94904 7 define w...