int array[] = { 23, 34, 12, 17, 204, 99, 16}; #define TOTAL_ELEMENTS (sizeof(array)/sizeof(array[0]))
sizeof()
返回值类型为无符号数- 使用
array[0]
可以在不修改宏定义语句的情况下改变数组的基本类型,比如由int
改成char
PS.
另一种宏定义方法是:#define TOTAL_ELEMENTS (sizeof(array)/sizeof(int))
int array[] = { 23, 34, 12, 17, 204, 99, 16}; #define TOTAL_ELEMENTS (sizeof(array)/sizeof(array[0]))
sizeof()
返回值类型为无符号数array[0]
可以在不修改宏定义语句的情况下改变数组的基本类型,比如由 int
改成 char
PS.
另一种宏定义方法是:#define TOTAL_ELEMENTS (sizeof(array)/sizeof(int))