C語言函式呼叫的問題

2022-04-17 05:52:47 字數 631 閱讀 4501

1樓:匿名使用者

主函式的a作為輸入引數輸入給函式aaa進行計算,計算後a的值不發生變化。

這是c語言的基本規則。

從編譯原理角度講,輸入aaa的只是a的值,並不是a所在的暫存器或位址,a的值輸入aaa後,該值被存放在另乙個臨時暫存器或位址,發生改變的是這個臨時暫存器或位址的值,而非a所在的暫存器或位址的值,所以,a的值並沒有發生變化。

2樓:海南特產大全

這是因為你傳送的不是a的位址,所以把主函式的值傳送給被調函式執行後,被調函式的值是改變了,但執行過後,記憶體直接釋放,所以主函式的值是沒有改變的,如果你想改變主函式的值,只有傳送變數的位址!

#include

void aaa(int * x);

void main()

void aaa(int * x)

你試著執行一下,我很久沒鼓搗過了!希望幫助到你

3樓:匿名使用者

傳值不會改變實參的值,傳引用即可

void aaa(int x) 定義成 void aaa(int& x)

4樓:神龍見尾不見

因為函式的引數是值傳遞,

形參的改變,並不影響實參的改變

C語言指標建立函式問題,C語言指標呼叫函式問題,急求解釋(本題是《c和指標》上的題目)

第乙個表示傳遞graphadjlist型別的引用g,第二個表示傳遞graphadjlist型別的指標g 另外這是c 不是c。c語言指標呼叫函式問題,急求解釋 本題是 c和指標 上的題目 c語言指標作函式引數時的返回問題 首先,弄懂函式引數都是靠值傳遞。指標也是。進入函式後,函式建立幾個空間給形參,再...

c語言函式呼叫引數傳遞的是什麼,C語言函式呼叫引數傳遞的是什麼

c語言傳遞的是值而不是位址,這一點從vb轉過來的程式設計師一定要注意。否則不經意間就會犯錯誤。另外下層函式修改上層函式變數不是一種好習慣,容易引發錯誤。c語言中函式可以返回乙個函式值,如果你需要返回多個函式值可以用下面的形式 fun int a,int b main 如果按vb的習慣,fun int...

怎樣呼叫c語言的system函式

c語言的system函式呼叫如下 函式名 system 功 能 發出乙個dos命令 用 法 int system char command system函式已經被收錄在標準c庫中,可以直接呼叫程式例 include include int main void system函式的輸入值有 system...