void func(int a)本回答由提問者推薦int a=10;
func(a);
printf("a=%d",a); // 仍然顯示 a=10, 因為整型引數a在func()中是按值傳遞的, 也就是說func()僅使用a的值, 而對儲存a的記憶體位址不加修改;
void func(int* a)
int a=10;
func(&a);
printf("a=%d",a); // 顯示 a=100, 因為整型引數指標a在func()中是按位址傳遞的, 也就是說func()使用a的儲存位址, 直接修改其內容.
陣列引數與指標引數相同, 均按位址傳遞.
採納率:48% 來自:芝麻團 擅長: 電腦/網路
影象處理軟體
c/c++
中醫數學
int main()
void swap(int a,int b);//實際是不能交換a和b的值的,是值傳遞
而void f(int a,int n)
來自:求助得到的回答
值傳遞 位址傳遞
在呼叫乙個有引數的過程時,首先進行的是形式引數與實在引數的結合,實現呼叫過程的實在引數與被呼叫過程的形式引數之間的資料傳遞。資料傳遞方式有兩種方式 按值傳遞與按位址傳遞。1.按值傳遞引數 按值傳遞引數時,是將實在引數的值複製乙個形式引數中,如果在呼叫過程中改變了形式引數的值,不會影響實在引數本身,即...
詳述值傳遞和位址傳遞
1.值傳遞 值傳遞可以簡單的理解為將實參的值傳遞給形參,之後即使修改了形參的值,實參的值還是不會改變。package yang public class yangyujie 執行結果 102.位址傳遞 位址傳遞,顧名思義傳遞的是位址,實參和形參指向同乙個位址,改變形參的值是可以改變實參的值的。pac...
C 值傳遞和位址傳遞
在c 呼叫函式時,會存在值傳遞和位址傳遞,也叫 傳引用和傳值 正好用到這方面內容,因此做個總結,加深一下理解,如果有不到位或者不準確的地方,請小夥伴們多指教。1 位址傳遞時,形參和實參是同乙個變數,即使用相同的記憶體空間,二者有相同的位址。而傳值時二者位址不同 2 位址傳遞時,由於沒有新建變數,所以...