指针函数
指针函数:函数的返回值类型是个指针的函数
例如这样的:
int a = 9;//全局变量a
int* test1() { //指针函数带星号,返回的是指针类型
int* p;
p = &a;//把a的地址给p
return p;//返回p的地址
}
int main() {
int* k;//定义指针k
k = test1();//这里k会得到p存储的地址
cout << *k;//输出的值为a的值,即为9
}
指针函数就是返回值是一个地址的函数
函数指针
函数指针:假设有一个函数名称为a,那么就要用函数名称为b的函数间接的调用函数名称为a的函数。
格式:函数返回类型(*函数指针名字)(参数类型,参数类型)= &要间接调用函数的名称
下面的p函数其实就等价于test函数
void test(int a, int b) {
cout << a << " " << b << endl;
}
int main() {
void(*p)(int, int) = &test;//定义名称为p的函数指针,可以调用test函数
p(3, 4);//输出的值和调用test函数时一样, 3 4
}```