目录: 标题| 题干| 答案| 搜索| 相关
问题

在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是A.地址


在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是A.地址传递 B.单向值传递C.由实参传形参,再由形参传实参 D.传递方式由用户指定

  • A地址传递
  • B单向值传递
  • C由实参传形参,再由形参传实参
  • D传递方式由用户指定
参考答案
参考解析:

函数调用时,在主调函数和被调函数之间,存在着数据的传递,利用参数传递数据和利用返回值传递数据是常用的两种方法。函数调用时的参数叫做实参,函数执行时的参数叫做形参,利用参数传递数据实质是指函数实参和形参之间的数据传递过程。存在两种数据传递的方式:传值和传地址。在函数调用时,系统为形参准备空间,并把实参的值赋值到形参空间中,在调用结束后,形参空间将被释放,而实参的值保持不变,这就是传值传递方式。传值传递方式中实参与形参之间的数据传递是单向的,只能由实参传递给形参。因而,即使形参的值在函数执行过程中发生了变化,也不会影响到实参值。在C语言中,当参数类型是非指针类型和非数组类型时,均采用传值方式。传地址方式把实参的地址赋值给形参,这样形参就可以根据地址值访问和更改实参的内容,从而实现双向传递。当参数类型是指针类型或数组类型时,均采用传地址方式。区别于参数传值方式和返回值传递方式,传地址方式具有明显的优势。(1)参数传值方式是主调函数与被调函数之间的单向数据传递方式,而参数的传地址方式则实现了二者之间的双向数据传递。(2)函数的返回值每次只能把一个数据项从被调函数传递到主调函数,而参数的传地址方式却可一次性地传递多个数据项到主调函数。根据上述描述,由于本题中说的实参是普通的变量,即非指针类型和数组类型,那么采用的是传值方式,是单向的。因此,本题的答案是B。

分类:其他
相关推荐

1、函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是()。

函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是()。AFun(20)BFun(20+n)CFun(n)DFun(&n)

2、当调用函数时,实参是一个数组名,则向函数传送的是()。

当调用函数时,实参是一个数组名,则向函数传送的是()。A数组的长度B数组首地址C数组每一个元素的地址D数组每个元素的值

3、●在C语言中,若函数调用时实参是数组名,则传递给对应形参的是(51)。(51

●在C语言中,若函数调用时实参是数组名,则传递给对应形参的是(51)。(51)A数组空间的首地址B数组的第一个元素值C数组中元素的个数D数组中所有的元素

4、函数调用的多态性涉及到程序运行时的后期绑定,也就是说在执行的时候,根据变量实

函数调用的多态性涉及到程序运行时的后期绑定,也就是说在执行的时候,根据变量实际指向的对象类型(不是变量本身的类型)来决定所调用的函数。A正确B错误

5、函数中的形参和调用时的实参都是数组名且都是变量时,传递方式有什么不同?

函数中的形参和调用时的实参都是数组名且都是变量时,传递方式有什么不同?

6、若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。

若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。A函数的形参和实参分别占用不同的存储单元B形参只是形式上的存在,不占用具体存储单元C同名的实参...