求一维数组方法:

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[]的大小。
内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!