1樓:網友
值形參——傳值:呼叫時可用表示式代替形參,不該變實在引數的值。
例4:請看下列程式的執行結猛襲旁果。禪豎。
program li3_10;
var a,b,c:integer;
procedure sub(x,y:integer;var z:integer);
beginx:=x+1;y:=y+1;z:=x+y;
writeln('sub:x=',x:2,'y=',y:2,'z=',z:2);
end;begin
a:=1;b:=4;c:=9;
writeln('main:a=',a:2,'b=',b:2,'c=',c);
sub(a,b,c);
writeln('main:a=',a:2,'b=',b:2,'c=',c);
sub(c+5,b*b,a);
writeln('main:a=',a:2,'b=',b:2,'c=',c);
readln;
end. main:a=1 b=4 c=9
sub:x=2 y=5 z=7
main:a=1 b=4 c=7
sub:x=13 y=17 z=30
main:a=30 b=4 c=7
2樓:翠北古以彤
i是形參。q是變數形參。
因為i,q都是在過慎弊程的形式參數列內。
形參包括值形參與變數形參。
procedure
pc(m:integer;
vart:real);
未燃孝手用var說明的m為值形參,用var說明的t是變數形參。
過程的呼叫。
過程的呼叫出現在主程式裡面。
所以實參出現在主程式中皮嫌。
過程名(實在參數列)
這個實在參數列裡面的就是乙個實參。
都是參考書上打的。
o(∩_o懂了麼?
實參與形參有什麼區別?
3樓:然後去遠足
形參出現在函式定義中,在整個函式體內都可以使用, 離開該函式則不能使用。實參出現在主調函式中,進入被調函式後,實參變數也不能使用。 形參和實參的功能是作資料傳送。
發生函式呼叫時, 主調函式把實參的值傳送給被調函式的形參從而實現主調函式向被調函式的資料傳送。
1、形參變數只有在被呼叫時才分配記憶體單元,在呼叫結束時, 即刻釋放所分配的記憶體單元。因此,形參只有在函式內部有效。 函式呼叫結束返回主調函式後則不能再使用該形參變數。
2、實參可以是常量、變數、表示式、函式等, 無論實參是何種型別的量,在進行函式呼叫時,它們都必須具有確定的值, 以便把這些值傳送給形參。 因此應預先用賦值,輸入等辦法使實參獲得確定值。
3、實參和形參在數量上,型別上,順序上應嚴格一致, 否則會發生「型別不匹配」的錯誤。
4、函式呼叫中發生的資料傳送是單向的。 即只能把實參的值傳送給形參,而不能把形參的值反向地傳送給實參。 因此在函式呼叫過程中,形參的值發生改變,而實參中的值不會變化。
pascal的過程中加var的形參是變參還是值參?
4樓:南方椰島
加var的是變參,在過程中操作變參時原來的變數的值會跟著改變,而值參只是把乙個變數的值複製一遍傳遞給過程,傳進去以後就和它本身沒有關係了。
5樓:網友
是變數,(可變數),格式:var (形式引數):(型別);,或者var (形式引數1,形式引數2,……形式引數n):(型別);
var a:integer;
b:real;
c,d,e:shortint;
以下是錯的:
var a:extended;
開啟浮點)正確的:
var a:extended;
6樓:岳陽樓之魂
變參!屬區域性變數,未進入過程是隨機數。
7樓:網友
var後定義的是變數;
const後定義的是常量。
例:var a,b:integer;
const c=100;
a,b是整型變數,c是值為100的常量。
8樓:
var後定義的都是變數。
在pascal中什麼叫做形參,什麼叫做實參,何時形參前面要加var
9樓:網友
形參就是形式引數的簡稱,在子程式中就是乙個變數。它接受呼叫這個子程式的主程式傳來的引數(可以是變數,也可是數值),也就是實際引數(簡稱實參),如果前面加了var 就是傳的不只是值,而是這個實參的位址。
10樓:夢裡尋你我他
在你定義函式時,函式里定義的引數就是形參(可以大致理解為 形式的引數)
var 是定義引數 的關鍵字,就像你定義乙個變數前也要先var ,引數其實也是變數。
而在你使用函式時,你帶入函式的引數就是實參 (大致理解為 實際使用的引數)
比較變參與值參的區別
11樓:_貓尾
宣告時不帶修飾符的形參是值形參。乙個值形參對應於乙個區域性變數,只是它的初始值來自該方法呼叫所提供的相應實參。
當形參是值形參時,方法呼叫中的對應實參必須是乙個表示式,並且它的型別可以隱式轉換為形參的型別。
允許方法將新值賦給值形參。這樣的賦值隻影響由該值形參表示的區域性儲存位置,而不會影響在方法呼叫時由呼叫方給出的實參。
那個一會在解釋。
c++是值形參還是變參
12樓:網友
c++的函式定義用值形參。
抄和引用bai形參的都有,引用形參用的多一du點;至於zhi
變參,c++很少有可變引數dao的(儘管有這樣的語法,但是幾乎不怎麼用),c語言用的多一些,像c語言常用的printf、scanf就是可變引數,還有一些linux的函式也會用可變引數,c++很少見可變引數。
形參和實參的區別是什麼,c語言中形參和實參是什麼意思?有什麼區別?
淳于長順印黛 實參是用來填充形參的。當函式被呼叫時,形參列在函式名後面的括號裡。執行函式呼叫時,實參被傳遞給形參。1 形參變數只有在被呼叫時才分配記憶體單元,在呼叫結束時,即刻釋放所分配的記憶體單元。因此,形參只在函式內部有效。函式呼叫結束返回主呼叫函式後則不能再使用該形參變數。2 實參可以是常量 ...
c中實參和形參有什麼區別,c 中形參與實參的本質區別是什麼(例如儲存機理等)
無法無天 實參和形參被分配的位址不同。可以這樣比喻,實參是一間別墅,而形參是另一間別墅。實參裡的東西被複製了乙份搬到了形參裡面,而形參這件別墅裡面的東西被扔了或者新增了新的東西是不會對實參這件別墅造成影響的。如果不用指標或者引用,實參只能向形參裡面傳遞東西 值 就好比上面的舉例,實參的東西能拷貝乙份...
如果形參是指標,實參也是指標,把實參傳進去,是不是對指標的拷貝嗎
幹莘出佩 程式一可以實現a,b值的交換,程式二則不行。要想明白這個需要知道一下幾點知識 1,變數的作用範圍 區域性變數 程式二中void swap a,b 子程式中的變數a,b,k都為區域性變數,生命週期從呼叫此函式開始,函式執行完變數得到登出。2,函式引數的傳遞方式 以上兩個子程式引數傳遞方式都為...