C++在方法中判断数组的长度,并用指针遍历

代码如下:

----------------------------------------------代码开始------------------------------------------------------

#include<iostream>
using namespace std;
template<class T>
//如果将数组以(int arr)做参数,则只是传入了只是一个地址,sizeof(arr)的长度是单个元素的长度
void getSum(T& arr){
    int *p;
    //把数组首地址赋给指针p
    p=arr;
    //(sizeof(arr)/sizeof(arr[0]))获得未知长度的数组的长度
    for(int i=0;i<(sizeof(arr)/sizeof(arr[0]));i++){
            cout<<*p<<endl;
            //p每次加1就是到下个元素
            p++;
    }
}
int main(){
    int arr[10]={2,-6,-3,6,12,3,-54,7,22,-56};
    getSum(arr);
    return 0;
}

----------------------------------------------代码结束------------------------------------------------------

猜你喜欢

转载自blog.csdn.net/qq_41857764/article/details/85297808