您的位置:首页 > 编程语言 > C语言/C++

C/C++ 函数指针,强制转换示例

2015-05-30 23:48 417 查看
这个小例子分别演示了函数指针,函数指针类型,以及将整形强制转换为函数指针地址。希望对初次接触函数指针的朋友有所帮助。

#include "stdafx.h"
#include "stdlib.h"

void func(void)
{
printf("this is func!!\n");
}

typedef void(*pof)(void); //定义一种函数指针类型,类型名为pof

void funtmp(pof fp) //使用 pof 类型
{
fp();
}

int _tmain(int argc, _TCHAR* argv[])
{
void(*p) (void) =func; //定义一种函数指针变量,变量名为p
funtmp(func);
p();

printf("func's addr :x\n", func);
int addr = 0;
scanf_s("%x",&addr);
void (*p1)(void) =(void(*)())addr; //将 int 类型的 addr强制转换成函数指针类型赋值给函数指针变量 p1
p1();
system("pause");
return 0;
}





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: