當前位置:首頁 » 服務存儲 » 形參和實參類型存儲空間
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

形參和實參類型存儲空間

發布時間: 2023-05-23 05:20:48

⑴ 請問:實參與形參各占獨立的存儲單元,對么,錯在哪 形參是虛擬的,不掉用酒不沾內存,對么

使用值傳遞時,實參和形參是各自獨立的。引用傳遞時,實參和形參是一體的。
使用值傳遞時,形參是被調用函數的局部變數,不調用函數就不會生成局部變數,所以可以認為是不調用就不佔內存。

c語言形參和實參共占相同的存儲空間

無論是不是指針,形參實參都不是佔用相同的空間。不是指針時,形參和實參的值是相等的;當是指針時,形參和實參都指向同一個地址(其實也就是*p(形參)和*q(實參)的值是相等的),但絕不是相同存儲空間

⑶ c語言的形參是否占存儲單元

C。

函數的形參是函數定義時由用戶定義的形式上的變數,實參是函數調用時,主調逗芹函數;被調函數提供的原始數據。

形參變數只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只有在函數內部有效。函數調用結束返回主調函數後則不能再使用該形參變數。實參和其所對應的形參分別佔用不同的存儲單元,彼此之間不影響。

(3)形參和實參類型存儲空間擴展閱讀:

形參和實參的特點

1、形參變數只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只在函數內部有效。函數調用結束返回主調用函數後則不能再使用該形鋒派參變數。

2、實參可以是常量、變數、表達式、函數等,無論實參是何種類型的量,在進行函數調用時,它們都必須有確定的值,以便把這些值傳送給形參。因此應預先用賦值,輸入等辦法使參數獲得確定值。

3、實參和形參在數量上,類型上、順序上應嚴格一致,否則就會發生類型不匹配的錯誤。

4、在一般傳值調用的機制中只能把實參傳送給形參,而不能把形參的值反向地傳送給實參。因此在函數調用過程中,形參值發生改變,而實參中的值不會變化。而在引用調用的機制當山基畢中是將實參引用的地址傳遞給了形參,所以任何發生在形參上的改變實際上也發生在實參變數上。

網路-形參

⑷ 在C語言中,函數的形參和實參可以占同一個存儲單元,也可以占不同的存儲單元吧

形參只是實參的一個副本,即拷貝,它們不能公用存儲單元。

參數之間的傳遞分為數值傳遞與地址傳遞,如果是數值傳遞時,各自佔用不同的內存單元,如果是地址傳遞時,共用同一段內存單元。

函數調用時,主調函數把實參的值傳送給被調函數的形參從而實現主調函數向被調函數的數據傳送。 形參變數只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的回內存單元。

形參只是實參的一個副本,即拷貝,它們不能公用存儲單元,不佔相同的空間。

(4)形參和實參類型存儲空間擴展閱讀:

函數調用過程

1、函數的形參列於函數聲明中,在函數定義的函數體內使用。在未出現函數調用時,形參不佔內存中的存儲單元;當函數調用時,形參(任何種類的)是一類將被填充的空白或是佔位符。

2、將實參的值傳遞給形參。當函數被調用時,實參列在函數名後面的括弧里。執行函數調用時,實參被傳遞給形參。

3、在執行函數期間,由於形參已經有值,可以利用其進行相關運算。

4、通過return語句將函數值帶回到主調函數。

5、調用結束,形參單元被釋放。實參單元仍保留並維持原值(值傳遞)。

⑸ C語言中實參和形參分別存放在內存的什麼位置

形參只是一個符號,不會分配具體的空間的..當函數改閉冊被調用的時候,具體給出的參數,也就是實參,其實是一份拷貝..它的內存空間在該函數的堆中進行分配.比如 定義函數 int add(int ,int); 在主函數中 定態仿義變數 int x, y..調核宏用函數 add(x, y);那麼在函數add的堆中會分配出空間,來保存實參x y的拷貝..而主函數中的 x y 是在主函數的堆中保存的... 不曉得有沒有說明白..呵呵

⑹ c語言中,函數發生調用時,實參和形參都會佔用內存嗎

是的,形參和實參是兩個不同的存儲單元,都佔用內存空間,當函數調用結束後,形參的內存空間也就會被釋放掉了。

⑺ 實參與形參分別佔用不同的存儲空間 這句話錯在哪

實參可能占棧空間,也可能占靜態空間,也老明可能佔全枝正局空間等,形參只佔棧空間。如果原話改成實猛含悔參與形參可能佔用不同的存儲空間就對了

⑻ 在c語言中 調用函數時,形參與實參可以共用存儲單元嗎

答案肯定的——形參和實參可以完全一樣。
在程序執行的過程中,實參的作用域是主函數,只要程序沒有停止,實參一直有效;
形參是定義函數是引入的參數,系統只在該函數被調用時分配臨時內存,當自定義函數執行完後,用於臨時儲存形參的空間將被釋放。
所以即使形參和實參的類型,名字完全一樣,系統也能夠把它們區分開。即可以完全一樣。
註:解決這個疑問關鍵是要搞清楚變數作用域方面的內容。

⑼ 實參和形參都需要佔用存儲單元么

實參和形參各佔用獨立的存儲單元。

實參和形參是各占獨立存儲空間,函數調用過程中,實參向形參拷貝復制值。實參是個變數,形參也是個變數。

如果佔用同一片空間的話,編譯時候就不存在實參形參類型不匹配的報錯。參數傳遞中,形參值的改變不影響實參的值。


(9)形參和實參類型存儲空間擴展閱讀

形參和實參的區別

1、形參變數只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只有在函數內部有效。函數調用結束返回主調函數後則不能再使用該形參變數。

2、實參可以是常量、變數、表達式、函數等,無論實參是何種類型的量,在進行函數調用時,它們都必須具有確定的值,以便把這些值傳送給形參。因此應預先用賦值,輸入等辦法使實參獲得確定值。

3、實參和形參在數量上,類型上,順序上應嚴格一致,否則會發生「類型不匹配」的錯誤。

4、函數調用中發生的數據傳送是單向的。即只能把實參的值傳送給形參,而不能把形參的值反向地傳送給實參。因此在函數調用過程中,形參的值發生改變,而實參中的值不會變化。