在定义数组的函数内可以直接使用sizeof(定义的数组名)/sizeof(数组的类型)来获取数组的长度
int array[] = {1, 2, 3, 4};
int arrayCount = sizeof(array) / sizeof(int);
但如果数组是从函数外以作为参数传入进来的,而非在本函数内定义的,那么ta就会退化为一个指针,无法用以上这种方式获取到ta的长度。这时候如果需要数组的长度要么在定义这个数组的函数使用上面那种方法进行计算后一并传入需要使用的函数,或者自己遍历数组进行一个一个计数大小。
网友评论