main  program  
a:=1;  
addom(a);  
write(a);  
 
procedure  addom(x)  
a:=x+1;  
x:=x+2;  
return;  
 
请问引用调用和值调用分别输出结果是什么  
A.1    B.2      C.3      D.4  
请用具体这个例子帮我解释呀,谢谢  ,最尽心的才可以得到我的分啊  
 
procedure里的a是怎么解释呀,呜。快帮帮我吧  

解决方案 »

  1.   

    procedure里边的a是全局变量嘛,所以在procedure对a的变动在过程外都是有效的,但是x是值调用的,所以直接对x的操作离开过程后都无效
      

  2.   

    又是一个学C++的:)
    不对,C++里的传值和引用好分多了.直接放进去就是传值,用的&的就是引用,也一样可以修改的的,直接的就是复制传值,比如你想传一个大小等于10K的结构的话,它也一样会帮你挎10K,不想让它拷你就用指针或引用,很明了.但是在delphi里我却不知道它在传的是什么东西,直接并不是直接(可能是引用,也可能是指针--但是引用和指针都是会修改本身数据的),引用可能味道一样吧,只是符号不一样而已.procedure里的a是怎么解释呀,呜。快帮帮我吧
    看一看基本书籍吧,形参和实参的区别.
      

  3.   

    浪客兄,你不知道delphi里边参数究竟传什么东西么?呵呵,看参数申明就行了嘛,x是值传送,var x就是引用传送了嘛
      

  4.   

    hottey(孤独的探索者)(起步中)  说的是对的,值调用只是传数据,而引用调用传的是地址里的数据,修改的话就会改变原来的值
      

  5.   

    x是值传送,var x就是引用传送、也就指针了嘛