C/C++ 查看数组类型长短 , python的len的封装原理

sizeof什么时间加括号什么时候不加括号?

sizeof当用应用于一个表达式的时候不需要圆括号:

  例如 sizeof  i;

如果运算符优先的时候需要:

  例如sizeof(i+j);

 

方法一、

int main(int argc, char const *argv[]) {
  int c[] = {1, 2, 3, 4, 'a'};
  int d;
  d = sizeof c / sizeof *c;
  std::cout << d << '
'; // 答案: 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; }
原文地址:https://www.cnblogs.com/renfanzi/p/8301521.html