方法一、
int main(int argc, char const *argv[]) { int c[] = {1, 2, 3, 4, 'a'}; int d; d = sizeof c / sizeof *c; std::cout << d << '\n'; // 答案: 5 return 0; }
方法二、
//#define LENGTH(array)((sizeof(array)) / sizeof(array[0]))
#define LENGTH(array)( sizeof array / sizeof *array ) int test() { int myints[4]; int myli[] = {2, 3, 1, 2, 3, 2, 1}; cout << LENGTH(myints) << endl; cout << LENGTH(myli) << endl; return 0; }