C++返回值为数组类型的函数示例
时间: 2024-05-07 12:15:27 浏览: 11
下面是一个返回值为数组类型的函数示例:
```c
#include <stdio.h>
int* getArray(int size) {
int* arr = (int*)malloc(size * sizeof(int)); // 动态分配内存空间
for (int i = 0; i < size; i++) {
arr[i] = i; // 将数组元素赋值为索引值
}
return arr; // 返回数组指针
}
int main() {
int size = 5;
int* arr = getArray(size); // 调用函数获取数组指针
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]); // 输出数组元素
}
free(arr); // 释放内存空间
return 0;
}
```
以上代码中,`getArray()` 函数接收一个整数参数 `size`,表示要创建的数组大小。函数内部通过调用 `malloc()` 动态分配内存空间,并将数组元素赋值为索引值。最后,函数返回数组指针。在 `main()` 函数中,调用 `getArray()` 函数获取数组指针,并遍历输出数组元素。最后,使用 `free()` 函数释放内存空间。
相关问题
C++返回值为字符类型的函数示例
以下是一个返回值为字符类型的函数示例:
```
char getGrade(int score) {
if (score >= 90) {
return 'A';
} else if (score >= 80) {
return 'B';
} else if (score >= 70) {
return 'C';
} else if (score >= 60) {
return 'D';
} else {
return 'F';
}
}
```
这个函数接受一个整数类型的参数 score,表示分数。根据分数的不同,函数会返回不同的字符等级,如 'A'、'B'、'C'、'D' 或 'F'。这个函数可以用来计算学生的成绩等级。
c++返回值类型为数组怎么表示
在C++中,函数返回一个数组的方法有两种:
1. 使用指针:可以使用指针作为函数的返回值类型,然后在函数内部创建数组并将指针指向该数组,最后返回指针。示例代码如下:
```cpp
int* func() {
static int arr[] = {1, 2, 3, 4, 5}; // 静态数组
return arr; // 返回指向数组的指针
}
```
在调用这个函数时,可以使用指针变量来获取返回的数组:
```cpp
int* p = func();
for(int i = 0; i < 5; i++) {
std::cout << p[i] << " ";
}
```
2. 使用数组引用:可以使用数组引用作为函数的返回值类型,这种方法需要使用C++11标准引入的新特性:返回类型后面跟上 `&` 符号来表示返回一个数组引用。示例代码如下:
```cpp
int (&func())[5] {
static int arr[] = {1, 2, 3, 4, 5}; // 静态数组
return arr; // 返回数组引用
}
```
在调用这个函数时,可以使用数组变量来获取返回的数组:
```cpp
int arr[5];
arr = func();
for(int i = 0; i < 5; i++) {
std::cout << arr[i] << " ";
}
```
需要注意的是,在使用以上两种方法返回数组时,需要确保返回的数组不会在函数结束后被销毁,因此可以使用静态数组或动态分配内存的方式来创建数组。