C语言 使用指针计算两个整数的和与差
生活随笔
收集整理的這篇文章主要介紹了
C语言 使用指针计算两个整数的和与差
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <stdio.h>void sum_diff(int num1, int num2, int *sum, int *diff){*sum = num1 + num2;*diff = (num1 > num2) ? num1 - num2 : num2 - num1;
}int main(void){int num1 ,num2;int sum, diff;puts("請輸入兩個整數。");printf("整數A:");scanf("%d", &num1);printf("整數B:");scanf("%d", &num2);sum_diff(num1, num2, &sum, &diff);printf("兩數之和是%d, 兩數之差是%d。\n", sum, diff);return 0;
}
調用函數 sum_diff 時,會將 main 函數中的 sum 和 diff 的地址復制給 sum_diff 的 形參 sum 和 diff。
在sum_diff函數體中,將求得的和賦值給 *sum將差值賦給 *diff,這也就相當于對 main函數中的 sum 和 diff進行賦值,因此從 sum_diff 函數返回到main函數之后,和與差也分別被儲存在 main函數 的 sum 和 diff 中了。
總結:
- 如果要在函數中修改變量的值,就需要傳入指向該變量的指針。
- 只要在被調用的函數里的指針前面寫上指針運算符 *,就能間接地處理該指針指向的對象。這也是 * 運算符又稱為間接訪問運算符的原因。
- 通過在指針前面寫上指針運算符 * 來訪問該指針指向的對象,稱為解引用。
注:
將指向對象的指針作為形參,并在指針前寫上指針運算符*,就可以訪問該對象本身。利用這一點,就可以在被調用處修改進行調用處的對象的值。
總結
以上是生活随笔為你收集整理的C语言 使用指针计算两个整数的和与差的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言 显示对象地址
- 下一篇: C语言 使用指针对两个变量的数值进行互换