正文
c语言形参可以定义为指针吗,c语言形参的值可以传递给实参吗
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
为什么C语言把数组形参当做指针?
函数传递的是数组的首地址,即a[0]的地址,而不是把整个地址都传过去,因为有首地址,只要往下寻找就能遍历整个数组了。
C语言里面数组和指针关系密切:数组名就是一个指针,表示第一个元素的地址,所以可以直接把定义后的数组名赋值给同类型的指针变量,用做函数的参数时,数组和指针等效的,即fun(int *p)和fun(int a[])等效。
用指针有一些好处:可以再指针上直接进行计算 比如加减指针。另外当数组作为 参数传递 到函数中的时候,用指针是很方便的。其实数组的名字就是一个指针。有一本经典的书 《C专家编程 》可以帮助理解这个问题。
你要记住。当实参是数组名元素的时候,形参是用指针接收的。所以*ss实质是指针,存放的是tt的地址。只不过*ss可以写成数组的形式:ss[i]。
正确答案是 指针。另外说明下,实参不管是数组元素地址,还是普通单个变量的地址,或者是结构体变量的地址,只要是地址,那么形参就要定义为指针,因为指针变量的值就是另外一个变量的地址。
c语言形参是指针的情况
1、在C语言,数组无论作为参数还是返回值,都是以指针形式返回或者传递的。在数组中,数组名字代表的是数组第1个元素的地址。比如如下数组。int a[10] = {1,2,3,4,5,6};数组名a,实际上相当于&a[0]。
2、形参是指针,实参就应该是对应数据类型的地址。
3、函数的返回值“绝不能”是函数数组,而只能是指向数组或函数的指针。有些人喜欢理解为:除数组和函数之外所有C语言参数在默认情况下都是传值调用,数组和函数都是传址调用。
请问c语言中形参为指针是为设么实参有时加&有时不加,求高手解答。_百度...
形参有*代表是一个指针,那么传递实参的时候可以传递指针变量,此时直接用指针变量名;或者传递普通变量的地址,此时用取地址符&+变量名。
一一对应出来 ①实参:指针 ②形参:指针的指针 因为你要在局部函数中改变实参,就需要传递它的地址,指针也是如此,把它类比为int型变量就好了。
第一种:要想改变实参的值可以使用引用,因为引用类型的形参实际上就是实参的别名,当然能对实参进行操作了。当然你也可以通过指针来改变相应实参的值,但是使用引用会更加安全,更自然。
c 语言没有引用的概念。 形参前不加 &。c 语言 函数调用用 时 填写 的 实参,可能出现前面有 &号,这个&表示求地址运算。当 形参 为指针时,实参需用指针 或 变量的地址。
这个是指针做为形参。传递实参的地址个形参。对形参的操作等于对实参的操作应为地址一样。不为形参开辟新的存储空间 int change(int,int)这是直传递。开辟新的存储空间。实参的值传给形参。
C语言中当形参是指针,实参是什么?当实参是指针,形参是什么?为什么?_百...
形参:全称为“形式参数”是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传递的参数。
它修改的不是指针,而是指向的内存,实参和形参指向的内存是同样的,所以实参指针变量指向的内容被修改了。所以,理解了指针的原理和函数调用的原理就能明白这个问题了,不能简单地认为只要传递指针就能改变实参。
形参不是实际存在变量,又称虚拟变量。目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
c语言形参可以定义为指针吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言形参的值可以传递给实参吗、c语言形参可以定义为指针吗的信息别忘了在本站进行查找喔。