写一个带指针参数的函数
时间: 2024-05-02 09:23:00 浏览: 5
好的,下面是一个带指针参数的函数示例:
```
void swap(int* a, int* b){
int temp = *a;
*a = *b;
*b = temp;
}
```
这个函数可以交换两个整型指针所指向的值。例如,如果有两个整型变量x和y,我们想交换它们的值,可以调用该函数:`swap(&x, &y)`。这将使x和y的值交换。
相关问题
写一个返回指针 的函数
以下是一个返回指针的函数示例:
```c++
#include <iostream>
int* returnPointer(int num) {
int* ptr = new int(num);
return ptr;
}
int main() {
int* ptr = returnPointer(5);
std::cout << *ptr << std::endl; // 输出 5
delete ptr; // 记得释放内存
return 0;
}
```
在这个示例中,`returnPointer` 函数接受一个整数参数 `num`,然后创建一个指向整数的指针 `ptr`,并将其初始化为 `num` 的地址。最后,该函数返回指向 `ptr` 的指针。
在 `main` 函数中,我们调用 `returnPointer` 函数并将其返回的指针存储在 `ptr` 变量中。我们可以使用 `*ptr` 来访问指向的整数值。最后,我们使用 `delete` 关键字释放 `ptr` 指向的内存空间。
写一个指向那个函数的指针
假设函数名为`myFunction`,指向该函数的指针可以这样声明:
```c++
int (*ptr)(int, char);
```
其中,`ptr`是指向函数的指针,指向的函数类型为`int (int, char)`,即接受一个`int`类型和一个`char`类型参数,返回一个`int`类型值。
可以使用以下语句将`ptr`指向`myFunction`函数:
```c++
ptr = &myFunction;
```
或者直接使用函数名,因为函数名本身就是函数的地址:
```c++
ptr = myFunction;
```
调用指向函数的指针可以通过以下两种方式:
```c++
int result = (*ptr)(1, 'a');
```
或者
```c++
int result = ptr(1, 'a');
```
这两种方式是等价的。