最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言淺析函數(shù)的用法

 更新時(shí)間:2022年07月07日 09:49:15   作者:ChampLixxx  
C語言函數(shù)是用來模塊化構(gòu)建程序的。如果你的功能少,你可以全都寫在mian函數(shù)中,但是當(dāng)實(shí)現(xiàn)功能多的時(shí)候,如果全寫在main的函數(shù)里,不僅代碼不美觀,而且函數(shù)實(shí)現(xiàn)的時(shí)候結(jié)構(gòu)復(fù)雜,代碼重復(fù)

問題引入

有時(shí)候,我們經(jīng)常需要在一個(gè)程序中,對(duì)一個(gè)數(shù)組進(jìn)行

鍵盤輸入,打印數(shù)組元素值。

有些代碼塊,功能是相同的,只有數(shù)組名和元素個(gè)數(shù)等參數(shù)不一樣,

代碼形式是一樣的,對(duì)于同一功能而不同參數(shù)的代碼塊,那么咱就可以

將其封裝成一個(gè)函數(shù),如果您需要用到這樣的功能或者代碼塊,那么我們

就不需要重復(fù)的去寫代碼塊,我們只需要調(diào)用這個(gè)函數(shù)。

函數(shù)

  • 函數(shù)是完成某個(gè)功能的指令序列的封裝。
  • 函數(shù)有什么特點(diǎn):
  • 相同功能的代碼塊,重復(fù)利用、模塊化思想。

C語言中函數(shù)的語法形式

函數(shù)返回值類型 函數(shù)名(輸入?yún)?shù)列表) --> 函數(shù)頭

{

函數(shù)的具體實(shí)現(xiàn) --> 函數(shù)體

}

“函數(shù)返回值類型”:

函數(shù)最終返回的結(jié)果的類型。

“單值類型” : 結(jié)果用一個(gè)寄存器或兩個(gè)寄存器可以保存的值。

int / long

void : 表示該函數(shù)無返回值。(void不可以省略)

問題

return語句后面的那個(gè)表達(dá)式的值,就是函數(shù)調(diào)用表達(dá)式的值。

但是有些函數(shù)并沒有返回值,難道說這個(gè)函數(shù)調(diào)用表達(dá)式的值沒有值嗎?

函數(shù)調(diào)用表達(dá)式任然會(huì)有一個(gè)值,只不過我們不知道這個(gè)值時(shí)多少,R0中

一定會(huì)有一個(gè)確定的值(undefine,未知)

例子

void print_array(int a[], int n)
			{
				int i;
				for(i = 0 ; i < n ; i++)
				{
					printf("%d ", a[i]);
				}
				printf("\n");
				//return ;
			}

“函數(shù)名” : C語言中標(biāo)識(shí)符的規(guī)定。

               array_sum 
               Shuzu_he 
                  “輸入?yún)?shù)列表” : 規(guī)定輸入?yún)?shù)必須要有 類型 參數(shù)名 ,
                 參數(shù)與參數(shù)之間用 ',' 隔開
    類型1 參數(shù)名1 , 類型2 參數(shù)名2 , .......  

void : 表示該函數(shù)不帶參數(shù)。(void可以省略)

return語句 :

return 返回的意思。return只能用在函數(shù)內(nèi)部。

表示函數(shù)結(jié)束的意思。

return ; 函數(shù)結(jié)束,不帶任何返回值。

在函數(shù)的返回值類型為void的時(shí),可能需要用到上述語句。 return 表達(dá)式 ; 函數(shù)結(jié)束,并且?guī)б粋€(gè)返回值,“表達(dá)式”的值。

函數(shù)的返回值類型,就是return 語句后面的“表達(dá)式”的值的類型。

函數(shù)的調(diào)用過程

函數(shù)調(diào)用: 調(diào)用一個(gè)已經(jīng)實(shí)現(xiàn)了的 函數(shù)去執(zhí)行函數(shù)中封裝的指令序列。

a: 需要指定是哪個(gè)函數(shù)/任務(wù) ,指定任務(wù)名/函數(shù)名

b: 完成該任務(wù)/函數(shù) 需要有哪些實(shí)際上的參數(shù)(實(shí)際參數(shù))

實(shí)際參數(shù)(實(shí)參): 調(diào)用該函數(shù)式傳入的參數(shù)。

形式參數(shù)(形參): 定義或設(shè)計(jì)該函數(shù)時(shí)的參數(shù)。

參數(shù)的傳遞,是將 形參 = 實(shí)參的值?。?/p>

“實(shí)參” : 就是一個(gè)表達(dá)式

指定實(shí)參時(shí),不需要指定實(shí)參的類型。

實(shí)參需要與形參一一對(duì)應(yīng)(不僅僅實(shí)參與形參的個(gè)數(shù)對(duì)應(yīng),

并且實(shí)參與形參的類型也要相對(duì)應(yīng))!!!

例:

int main()
			{
				int a[10];
				input_array(a , 10);//調(diào)用函數(shù)
				int s = sum(5  , 6);
				printf("s == %d\n", s);
			} 

函數(shù)的調(diào)用過程        a、把實(shí)參的值 賦值給 相對(duì)應(yīng)的形參
        b、跳轉(zhuǎn)到函數(shù)中去執(zhí)行函數(shù)中的指令序列。
            直到遇到 return語句 或者 函數(shù)語句全部執(zhí)行完畢。
            return 后面的表達(dá)式的值,將作為整個(gè)函數(shù)調(diào)用表達(dá)式的值。 
            當(dāng)函數(shù)執(zhí)行完畢,那么此時(shí)CPU會(huì)回到函數(shù)調(diào)用處,
            繼續(xù)往下面運(yùn)行。 

函數(shù)聲明

就是告訴編譯器 這個(gè)“名字(標(biāo)識(shí)符)”是一個(gè)函數(shù)名,

在后面的某個(gè)位置會(huì)定義的。

函數(shù)聲明: 
    void input_array(int arr[], int n)  ;    //函數(shù)頭 

外部的函數(shù)聲明:

extern 外部函數(shù)的頭部;

本文件中的函數(shù)的聲明:

函數(shù)頭部分 ;

變量聲明

外部的全局變量的聲明 :

extern 變量的類型 變量;

例子: 假設(shè)你想要在1.c中去使用2.c中的那個(gè)變量

2.c                  1.c 
                    //對(duì)2.c中變量a進(jìn)行外部聲明 
                    extern int a;
int a = 250;         printf("2.c =>  a ==%d\n", a);

數(shù)組聲明

int a[3][4];

數(shù)組的聲明與普通變量的聲明類似!!!

到此這篇關(guān)于C語言淺析函數(shù)的用法的文章就介紹到這了,更多相關(guān)C語言函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • VC實(shí)現(xiàn)Windows多顯示器編程的方法

    VC實(shí)現(xiàn)Windows多顯示器編程的方法

    這篇文章主要介紹了VC實(shí)現(xiàn)Windows多顯示器編程的方法,涉及VC獲取屏幕分辨率及顯示參數(shù)等技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • C語言 數(shù)據(jù)結(jié)構(gòu)之鏈表實(shí)現(xiàn)代碼

    C語言 數(shù)據(jù)結(jié)構(gòu)之鏈表實(shí)現(xiàn)代碼

    這篇文章主要介紹了C語言 數(shù)據(jù)結(jié)構(gòu)之鏈表實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • C語言系統(tǒng)調(diào)用約定

    C語言系統(tǒng)調(diào)用約定

    這篇文章介紹了C語言系統(tǒng)調(diào)用約定,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值。需要的朋友可以收藏下,方便下次瀏覽觀看
    2021-12-12
  • C++在同一對(duì)象中存儲(chǔ)左值或右值的方法

    C++在同一對(duì)象中存儲(chǔ)左值或右值的方法

    C++ 代碼似乎經(jīng)常出現(xiàn)一個(gè)問題:如果該值可以來自左值或右值,則對(duì)象如何跟蹤該值?即如果保留該值作為引用,那么就無法綁定到臨時(shí)對(duì)象,本文給大家介紹了C++在同一對(duì)象中存儲(chǔ)左值或右值的幾種方法,需要的朋友可以參考下
    2025-03-03
  • C/C++模擬實(shí)現(xiàn)煙花效果的示例代碼

    C/C++模擬實(shí)現(xiàn)煙花效果的示例代碼

    這篇文章主要為大家詳細(xì)介紹了C/C++模擬實(shí)現(xiàn)煙花效果的兩種簡(jiǎn)單方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以了解下
    2024-01-01
  • 利用Matlab繪制有趣圖像的示例代碼

    利用Matlab繪制有趣圖像的示例代碼

    這篇文章主要為大家總結(jié)了一些利用Matlab繪制的有趣好看的圖像的示例代碼。文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以動(dòng)手試一試
    2022-03-03
  • C語言實(shí)現(xiàn)文本編輯器系統(tǒng)

    C語言實(shí)現(xiàn)文本編輯器系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)文本編輯器系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Reactor反應(yīng)器的實(shí)現(xiàn)方法詳解

    Reactor反應(yīng)器的實(shí)現(xiàn)方法詳解

    本篇文章是對(duì)Reactor反應(yīng)器的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++11中std::packaged_task的使用詳解

    C++11中std::packaged_task的使用詳解

    這篇文章主要介紹了C++11中std::packaged_task的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 深入解析C++編程中的純虛函數(shù)和抽象類

    深入解析C++編程中的純虛函數(shù)和抽象類

    這篇文章主要介紹了深入解析C++編程中的純虛函數(shù)和抽象類,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-09-09

最新評(píng)論

靖江市| 奉节县| 亳州市| 寿阳县| 云和县| 海盐县| 九江县| 洛隆县| 申扎县| 海南省| 永州市| 东阳市| 桐庐县| 朝阳区| 巴青县| 合肥市| 喀喇沁旗| 雅江县| 栾川县| 惠安县| 呼伦贝尔市| 临沭县| 阳信县| 武平县| 邮箱| 华宁县| 休宁县| 宜君县| 兰西县| 河北省| 黄梅县| 屏东市| 丹寨县| 青田县| 德庆县| 广东省| 门源| 来安县| 蓬安县| 黔南| 彭州市|