使用地址呼叫函式實現C++程式的加減法
假設我們有兩個數字a和b。我們需要定義一個函式來計算(a + b)和(a - b)。但是使用C++函式,我們最多隻能返回一個值。為了得到多個輸出,我們可以使用指標將輸出引數放入函式引數中,並使用這些變數的地址來呼叫該函式。在這個問題中,我們將用a+b更新a,用a-b更新b。呼叫函式時,我們需要傳遞這兩個變數的地址。
因此,如果輸入為a = 15,b = 18,則輸出為a + b = 33,a - b = -3
為了解決這個問題,我們將遵循以下步驟:
定義一個函式solve(),它將接收a和b的地址。
temp := 給定地址變數值的和
b := 給定地址變數值的差
a = temp
示例
讓我們來看下面的實現來更好地理解:
#include <iostream>
using namespace std;
int solve(int *a, int *b){
int temp = *a + *b;
*b = *a - *b;
*a = temp;
}
int main(){
int a = 15, b = 18;
solve(&a, &b);
cout << "a + b = " << a << " and a - b = " << b;
}
輸入
15, 18
輸出
a + b = 33 and a - b = -3
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP