求一维数组长度误区

2018-06-18 03:52:19来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

求一维数组方法:

int a[] ={0,0,1,1}; 

int len= sizeof(a)/sizeof(a[0]); 

注意:这是在定义数组后直接求长度;

在下面这种情况下这种方法不适用:

int getLength(int[] a){
    int length;
    length=sizeof(a)/sizeof(a[0]); //这样是错误的,得到的结果永远是1
    return length;
}
void main(){
int a[] ={0,0,1,1}; 
getLength(a);
}
因为,a作为形参传过去的十数组的首地址,所以此时的sizeof(a),仅仅是地址a的大小,不是数组a[]的大小。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:STM32高级定时器TIM1产生两路互补的PWM波(带死区)

下一篇:一张有料的图片!!!附文件-图片合成器C语言实现算法