C语言获取数组的长度

以前从没注意过C语言如何获取数组长度:

#include <stdio.h>
#define GET_ARRAY_LEN(array,len) {len = (sizeof(array) / sizeof(array[0]));}
//必须使用宏定义,如果在程序中直接使用,len的值为1
int main() {
  int a[] = {1,2,3,4,5,6,7,8};
  int len;
  GET_ARRAY_LEN(a,len);
  printf("%d",len);
}

 

posted @ 2017-12-14 12:58  三寸碧玉心  阅读(3242)  评论(0编辑  收藏  举报