typedef void (*func_ptr)(void);
func_ptr usm_rom_set_tx2_drive_strength_hs;
定义一个函数指针类型。
比如你有三个函数:
void hello(void) { printf("你好!"); }
void bye(void) { printf("再见!"); }
void ok(void) { printf("好的!"); }
typdef void (*funcptr)(void);
这样就构造了一个通用的函数
你用的时候可以这样:
void speak(int id){funcptr words[3] = {&hello, &bye, &ok};
funcptr fun = words[id];(*fun)();}这样的话,如果speak(0)就会显示“你好!”
speak(1)就会显示“再见!”
speak(2)就会显示“好的!”
用于处理参数和返回值的形式都一样,但是功能不确定的一组函数,可以使用函数指针。
比如算术运算符,加、减、乘、除,都可以用typedef int (*calc)(int,int)代表,等等
这里是定义了一个指向参数为空,返回值为空的函数的指针类型。
这里是定义了一个指向参数为空,返回值为空的函数的指针类型。
比如:
#include<iostream>
#include<stdlib.h>
using namespace std; typedef void ( *funcptr)(void); //定义指针类型 void fun1(void) //定义函数一
{
cout << "This is fun1" << endl;
} void fun2(void) 定义函数二
{
cout << "This is fun2" << endl;
} int main()
{
funcptr p1; //定义了一个该类型的指针p1
p1 = fun1; //p1指向函数一
p1(); p1 = fun2; //p1指向函数二
p1(); system("pause");
}
定义一个函数指针类型。
比如你有三个函数:
void hello(void) { printf("你好!"); }
void bye(void) { printf("再见!"); }
void ok(void) { printf("好的!"); } typdef void (*funcptr)(void);
这样就构造了一个通用的函数
你用的时候可以这样:
void speak(int id)
{
funcptr words[3] = {&hello, &bye, &ok};
funcptr fun = words[id];
(*fun)();
} 这样的话,如果speak(0)就会显示“你好!”
speak(1)就会显示“再见!”
speak(2)就会显示“好的!” 用于处理参数和返回值的形式都一样,但是功能不确定的一组函数,可以使用函数指针。 比如算术运算符,加、减、乘、除,都可以用typedef int (*calc)(int,int)代表,
TDC——Time-to-Digital Converter,即时间数字转换器,是常用的时间间隔测量电子学电路。目前常用的高精度时间测量芯片有TDC-GP2,测量分辨率达65ps。