c语言在自定义函数里怎么返回数组
时间: 2023-02-06 14:50:50 浏览: 129
在 C 语言中,函数无法直接返回数组。但是,你可以使用指针来返回数组中的元素。
例如,你可以定义一个函数,该函数使用指针作为参数,并将数组中的元素赋值给指针:
```
void get_array(int *arr) {
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
}
int main() {
int arr[3];
get_array(arr);
printf("%d %d %d\n", arr[0], arr[1], arr[2]);
return 0;
}
```
在上面的代码中,函数 `get_array` 接收一个指向整数的指针作为参数,并将数组中的三个元素赋值给指针所指向的内存空间。在 `main` 函数中,我们定义了一个整型数组 `arr`,并将它作为参数传递给函数 `get_array`。这样,函数就可以修改数组 `arr` 中的元素了。
你也可以使用结构体来返回多个值,例如:
```
struct result {
int arr[3];
int size;
};
struct result get_array() {
struct result res;
res.arr[0] = 1;
res.arr[1] = 2;
res.arr[2] = 3;
res.size = 3;
return res;
}
int main() {
struct result res = get_array();
printf("%d %d %d\n", res.arr[0], res.arr[1], res.arr[2]);
printf("Size: %d\n", res.size);
return 0;
}
```
在上面的代码中,我们定义了一个名为 `result` 的结构体,该结构体包含一个整型
阅读全文