C++指针函数与函数指针
指针预热知识:
1 .指针就是地址
2 .指针的类型应该与变量类型匹配
例如
int a = 2;
//指针pa是int*类型,所以只能存放int类型变量a的地址
//绝对不能存放char、double...等类型变量的地址
int *pa = &a;
- 指针函数
返回值为指针(地址)的函数,下面是一个返回变量地址的函数
#include "stdafx.h"
#include <iostream>
using namespace std;
int * address(void);
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"变量c的地址为:"<<address()<<endl;
system("pause");
return 0;
}
//该函数返回变量c的地址
int * address(void)
//函数返回的是c(int类型)的地址
//所以设计函数返回值的类型应该为int*类型
{
int c;
//返回变量c的地址
return &c;
}
运行结果如下
- 函数指针
将函数作为参数传递
函数名就是该函数的地址,程序运行函数时就是通过这个地址(函数名)进入函数的
//fun函数是计算两个数相加并返回值
double fun(double a,double b