c++中求数组长度

#include <iostream>
using namespace std;

template <class T>
int getArrSize(T& arr){
	return sizeof(arr) / sizeof(arr[0]);
}

// begin()返回指向数组首元素的指针,end()返回指向尾元素的下一位置的指针
template <class T>
int getArrLength(T& arr) {
    return end(arr) - begin(arr);
}

// 但是这两种方法在字符数组的情况下都会多一个长度,因为有'', 所以要处理一下
char c[] = "abc";
cout << "getArrSize: " << getArrSize(c) << "  getArrLength: " << getArrLength(c) << endl;
原文地址:https://www.cnblogs.com/Lothlorien/p/10302438.html