C语言笔记之一 数组与函数篇(一)

       1.在C语言中,数组参数是以引用形式进行传递的,也就是传址调用,而标量和常量则是按值传递的。

       2.在C语言中,函数内对标量参数的任何修改都会在函数返回时丢失,因此,被调用函数无法修改调用函数以传值形式传递给它的参数。然而,当被调用函数修改数值参数的其中的一个参数时,调用函数所传递的数组就会被实际的修改。

       3.在C语言中,不论调用函数的程序传递给它的数组参数的长度是多少,这个函数都将照收不误。这是一个伟大的特性,他允许单个函数操纵任意长度的一维数组。这个特性不利的一面是函数没法知道该数组的长度。如果确实需要知道数组的长度,它的值必须作为一个单独的参数传递给函数。

       4.在C语言中,函数声明时将参数声明为指针,但在函数实际调用时,传给它的参数却为数组名。当数组名作为实参时,传给函数的实际上是一个指向数组起始位置的指针,也就是数组在内存中的地址。函数可以按照操纵指针的方式来操纵实参,也可以像使用数组名一样用下标来引用数组的元素。但是,由于他的传值调用语义,如果函数修改了形参数组的长度,他实际上将修改实参数组的元素,因此,若调用者不希望其被修改,可在此参数名前加上const修饰。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值