C語言的傳值和傳址的區別?

2021-06-22 12:07:47 字數 353 閱讀 7189

傳值時就是在記憶體中新開闢乙個空間,將值賦給這個新開闢的空間,其生命週期為該函式呼叫結束時釋放該空閒,計算結果不影響原呼叫資料記憶體空間的值。

傳址時同樣新開闢乙個空間,但不同的是將所用資料空間的記憶體位址存在新開闢的空間中,即指標,函式在資料處理過程中由於是指標,即對源資料進行操作,操作後結果影響原資料。

#include 

#include

void swap_value(int x, int y)

void swap_address(int *x, int *y)

int main(int argc, char *argv)

c語言的傳值和傳址

我們都知道c語言中函式傳參有兩種方式 傳值和傳址 傳值 實參把值傳給形參,但沒有傳位址,即對實參的修改無效 生成臨時變數 核心原理 函式會對形參和中間變數重新分配空間 void swap int pleft,int pright 優點 安全 函式的 不會影響外部實參 區域性變數值的交換對主函式的變數...

函式的傳值和傳址呼叫(C語言)

1 傳值呼叫。傳值呼叫顧名思義就是將引數的值傳遞給函式,而函式在進行呼叫時會複製這個值,然後將複製的值在函式中進行呼叫。void swap int a,int b int temp temp a a b b temp int main void int x 1,y 2 swap x,y printf...

傳值和傳址

let dadproto let sonproto dadproto sonproto.name 李四 console.log sonproto name 李四 age 20 console.log dadproto name 李四 age 20簡單資料型別 傳值 let a 10 let b a ...