<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言函數的聲明以及函數原型

    時間:2025-10-01 05:45:07 C語言

    C語言函數的聲明以及函數原型

      C語言把括號、賦值、強制類型轉換等都作為運算符處理。那么大家知道C語言函數的聲明以及函數原型是什么呢?下面來看看!

      C語言代碼由上到下依次執行,原則上函數定義要出現在函數調用之前,否則就會報錯。但在實際開發中,經常會在函數定義之前使用它們,這個時候就需要提前聲明。

      所謂聲明(Declaration),就是告訴編譯器我要使用這個函數,你現在沒有找到它的定義不要緊,請不要報錯,稍后我會把定義補上。

      函數聲明的格式非常簡單,相當于去掉函數定義中的函數體再加上分號;,如下所示:

      返回值類型 函數名( 類型 形參, 類型 形參… );

      也可以不寫形參,只寫數據類型:

      返回值類型 函數名( 類型, 類型…);

      函數聲明給出了函數名、返回值類型、參數列表(參數類型)等與該函數有關的信息,稱為函數原型(Function Prototype)。

      函數原型的作用是告訴編譯器與該函數有關的信息,讓編譯器知道函數的存在,以及存在的形式,即使函數暫時沒有定義,編譯器也知道如何使用它。

      有了函數聲明,函數定義就可以出現在任何地方了,甚至是其他文件、靜態鏈接庫、動態鏈接庫等。

      上節給出了計算sum = 1! + 2! + 3! + ... + (n-1)! + n!的代碼,這節我們稍作修改,將 factorial() 和 sum() 函數的定義放到 main() 函數后面,請看下面的代碼:

      #include /pic/pic/pic/pic/pic/pic/p>

      運行結果:

      1!+2!+...+9!+10! = 4037913

      我們知道,使用 printf()、puts()、scanf()、get) 等函數要引入 stdio.h 這個頭文件,很多初學者認為 stdio.h 中包含了函數定義(也就是函數體),只要有了頭文件程序就能運行。其實不然,頭文件中包含的都是函數聲明,而不是函數定義,函數定義都在系統庫中,只有頭文件沒有系統庫在鏈接時就會報錯,程序根本不能運行。

      最后再補充一點,函數原型給出了使用該函數的所有細節,當我們不知道如何使用某個函數時,需要查找的是它的原型,而不是它的定義,我們往往不關心它的實現。

    【C語言函數的聲明以及函數原型】相關文章:

    什么是C語言函數01-22

    淺談C語言函數11-11

    C語言的數組與函數02-28

    C語言函數的定義03-07

    C語言函數的含義09-30

    C語言函數 atoi()09-18

    C語言函數指針與回調函數詳解09-24

    C語言指針函數和函數指針詳解12-08

    C語言常用的輸入函數12-20

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人