独闷闷网
标题:
函数指针数组是什么样子的?是怎么用的?已解答。
[打印本页]
作者:
jianhong_wu
时间:
2015-1-29 16:54
标题:
函数指针数组是什么样子的?是怎么用的?已解答。
杜育-广东:
哪位大神知道void(*PortSendNBytes[3])(UINT8*szSendBytes,UINT8 ucSendLength)={UARTSendNBytes,USBSendNBytes,NETSentNBytes};究竟是在定义函数、还是数组,还是指针,我真的被它搞混了。
伟-肇庆:
这段代码,是定义了一个数组,数组的元素是函数指针,函数的类型是void ,参数是UINT8*szSendBytes,UINT8 ucSendLength,我在写这段代码,希望能帮助你理解:
#include <stdio.h>
#include <stdlib.h>
typedef unsigned char UINT8 ;
void UARTSendNBytes(UINT8*szSendBytes,UINT8 ucSendLength)
{
printf("串口发送\r\n");
}
void USBSendNBytes(UINT8*szSendBytes,UINT8 ucSendLength)
{
printf("USB发送\r\n");
}
void NETSentNBytes(UINT8*szSendBytes,UINT8 ucSendLength)
{
printf("NETS发送\r\n");
}
void main()
{
UINT8 a =0;
void(*PortSendNBytes[3])(UINT8*szSendBytes,UINT8 ucSendLength)={
UARTSendNBytes,USBSendNBytes,NETSentNBytes};
PortSendNBytes[0](&a,1);
PortSendNBytes[1](&a,1);
PortSendNBytes[2](&a,1);
}
复制代码
欢迎光临 独闷闷网 (http://dumenmen.com/)
Powered by Discuz! X3.2