C语言如何获得数组的长度?
- C/C++ code
unsigned int unStartString[] = {0x89, 0x50, 0x4e, 0x47, 0x0d};我想得到unStartString的长度5,如何实现?查了一下好像没有现成的函数,自己也想不出怎么得到。
[解决办法]
总长度充溢单个的长度,即得数组的个数。
int len = sizeof(unStartString)/sizeof(unsigned int);
[解决办法]
#define dim(arr) (sizeof(arr)/sizeof(arr[0])
直接传数组名,这是编译阶段可以这么搞,运行时动态获取数组长度是不行的,一般都是加一个数组长度的参数