使用指標在函式中查詢和與差的C程式


假設我們有兩個數字a和b。我們將必須定義一個可以同時計算(a + b)和(a - b)的函式。但是使用C語言中的函式,我們最多隻能返回一個值。為了找到多個輸出,我們可以使用指標將輸出引數作為函式引數。在這個問題中,我們將用a+b更新a,用a-b更新b。當我們呼叫函式時,我們將必須傳遞這兩個變數的地址。

因此,如果輸入類似於a = 5,b = 8,則輸出將為a + b = 13且a - b = -3

為了解決這個問題,我們將遵循以下步驟:

  • 定義一個函式solve(),它將接收a和b的地址

  • temp := 給定地址的變數值的總和

  • b := 給定地址的變數值的差

  • a = temp

示例

讓我們看看下面的實現,以便更好地理解:

#include <stdio.h>
int solve(int *a, int *b){
    int temp = *a + *b;
    *b = *a - *b;
    *a = temp;
}
int main(){
    int a = 5, b = 8;
    solve(&a, &b);
    printf("a + b = %d and a - b = %d", a, b);
}

輸入

a = 5, b = 8

輸出

a + b = 13 and a - b = -3

更新於:2021年10月8日

6K+ 瀏覽量

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告