在函数中怎么求形参中数组的长度
时间: 2024-03-26 12:35:12 浏览: 113
在函数中,如果形参是一个数组,可以使用以下两种方法来获取数组的长度:
1. 传递数组长度作为第二个形参
在函数定义中,可以在形参列表中添加一个表示数组长度的形参,然后在调用函数时将数组长度作为实参传递进去。示例代码如下:
```c++
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
printArray(arr, size);
return 0;
}
```
输出结果:
```
1 2 3 4 5
```
2. 使用模板
C++ 中可以使用模板来获取数组的长度。示例代码如下:
```c++
template <typename T, size_t N>
void printArray(T (&arr)[N]) {
for (int i = 0; i < N; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
printArray(arr);
return 0;
}
```
输出结果:
```
1 2 3 4 5
```
使用模板的方法可以保证数组长度的类型正确,而且无需在函数参数中显式传递数组长度。
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)