<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # C 按引用調用:使用指針 > 原文: [https://www.programiz.com/c-programming/c-pointer-functions](https://www.programiz.com/c-programming/c-pointer-functions) #### 在本教程中,您將借助示例學習將地址作為參數傳遞給函數。 此技術稱為“引用調用”。 在 C 編程中,也可以將地址作為參數傳遞給函數。 要在函數定義中接受這些地址,我們可以使用指針。 這是因為指針用于存儲地址。 讓我們舉個例子: * * * ## 示例:按引用調用 ```c #include <stdio.h> void swap(int *n1, int *n2); int main() { int num1 = 5, num2 = 10; // address of num1 and num2 is passed swap( &num1, &num2); printf("num1 = %d\n", num1); printf("num2 = %d", num2); return 0; } void swap(int* n1, int* n2) { int temp; temp = *n1; *n1 = *n2; *n2 = temp; } ``` 運行該程序時,輸出為: ```c num1 = 10 num2 = 5 ``` 使用`swap(&num1, &num2);`將`num1`和`num2`的地址傳遞給`swap()`函數。 指針`n1`和`n2`在函數定義中接受這些參數。 ```c void swap(int* n1, int* n2) { ... .. } ``` 在`swap()`函數中更改`* n1`和`* n2`時,`main()`中的`num1`和`num2`函數也被更改。 在`swap()`函數內部,交換了`*n1`和`*n2`。 因此,`num1`和`num2`也被交換。 請注意,`swap()`沒有返回任何內容。 其返回類型為`void`。 該技術在 C 編程中稱為“按引用調用”。 * * * ## 示例 2:將指針傳遞給函數 ```c #include <stdio.h> void addOne(int* ptr) { (*ptr)++; // adding 1 to *ptr } int main() { int* p, i = 10; p = &i; addOne(p); printf("%d", *p); // 11 return 0; } ``` 在此,存儲在`p*p`的值最初為 10。 然后,我們將指針`p`傳遞給`addOne()`函數。`ptr`指針在`addOne()`函數中獲取此地址。 在函數內部,我們使用`(*ptr)++;`將`ptr`中存儲的值增加了 1。 由于`ptr`和`p`指針都具有相同的地址,因此`main()`中的`*p`也是 11。
                  <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>

                              哎呀哎呀视频在线观看