单选题
1、第165题 (1.0分) 题号:176 数组名作为实参数传递给函数时,数组名被处理为()。
A
该数组的长度
B
该数组的元素个数
C
该数组的首地址
D
该数组中各元素的值
答案解析
正确答案:C
解析:
**解析:**
在 C/C++ 等编程语言中,当数组名作为实参传递给函数时,它并不会将整个数组的所有元素复制一份传过去(那样效率太低且占用大量栈空间),也不会传递数组的长度或元素个数。
实际上,**数组名在表达式中通常会被隐式转换为指向该数组第一个元素的指针**。也就是说,传递的是数组在内存中的**首地址**。
因此:
* **A 错误**:数组长度不是通过数组名直接传递的,通常需要额外传递一个表示长度的参数。
* **B 错误**:同理,元素个数也不会自动传递。
* **C 正确**:数组名作为实参时,退化(decay)为指向首元素的指针,即传递的是首地址。
* **D 错误**:传递的是地址,而不是所有元素的值的拷贝。
故正确答案为 **C**。
题目纠错
c语言选择判断题库
相关题目
单选题
1、第94题 (1.0分) 题号:164 下列数组说明中,正确的是()。
单选题
1、第93题 (1.0分) 题号:597 下列四个选项中,均是C语言关键字的选项是()。
单选题
1、第92题 (1.0分) 题号:542 若有int *p=( )malloc( 则向内存申请到内存
单选题
1、第91题 (1.0分) 题号:491 下列程序段的输出结果为()。 float k=0.8567; printf(”%06.1d%%”,k*100);
单选题
1、第90题 (1.0分) 题号:703 若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是()。
单选题
1、第89题 (1.0分) 题号:665 以下正确的说法是:在C语言中()。
单选题
1、第88题 (1.0分) 题号:679 在C语言中,形参的缺省存储类是()。
单选题
1、第87题 (1.0分) 题号:675 关于建立函数的目的,以下正确的说法是()。
单选题
1、第86题 (1.0分) 题号:610 以下选项中,与k=n++完全等价的表达式是()。
单选题
1、第85题 (1.0分) 题号:103 以下运算符中,优先级最高的运算符是()。
