<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # C - 函數指針 > 原文: [https://beginnersbook.com/2014/01/c-function-pointers/](https://beginnersbook.com/2014/01/c-function-pointers/) 在 [C 編程語言](https://beginnersbook.com/2014/01/c-tutorial-for-beginners-with-examples/)中,我們可以有一個概念,稱為**指向函數的指針**。在本教程中,我們將學習如何聲明函數指針以及如何使用此指針調用函數。要理解這個概念,你應該具備[函數](https://beginnersbook.com/2014/01/c-functions-examples/)和[指針](https://beginnersbook.com/2014/01/c-pointers/)的基本知識。** ## 如何聲明函數指針? ```c function_return_type(*Pointer_name)(function argument list) ``` 例如: ```c double? (*p2f)(double, char) ``` 這里`double`是函數的返回類型,`p2f`是函數指針的名稱,`(double, char)`是這個函數的參數列表。這意味著此函數的第一個參數是`double`類型,第二個參數是`char`類型。 讓我們借助一個例子來理解這一點:這里我們有一個函數`sum`,它計算兩個數字的總和并返回總和。我們創建了一個指向此函數的指針`f2p`,我們使用此函數指針`f2p`調用該函數。 ```c int sum (int num1, int num2) { return num1+num2; } int main() { /* The following two lines can also be written in a single * statement like this: void (*fun_ptr)(int) = &fun; */ int (*f2p) (int, int); f2p = sum; //Calling function using function pointer int op1 = f2p(10, 13); //Calling function in normal way using function name int op2 = sum(10, 13); printf("Output1: Call using function pointer: %d",op1); printf("\nOutput2: Call using function name: %d", op2); return 0; } ``` **輸出:** ```c Output1: Call using function pointer: 23 Output2: Call using function name: 23 ``` **關于函數指針的一些要點:** 1. 如注釋中所述,您可以在單個語句中聲明一個函數指針并為其賦值函數,如下所示: ```c void (*fun_ptr)(int) = &fun; ``` 2. 您甚至可以從此語句中刪除`&`符號,因為單獨的函數名稱表示函數地址。這意味著上面的語句也可以這樣寫: ```c void (*fun_ptr)(int) = fun; ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看