C/C++语言变量定义问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 13:55:35
请问:在C/C++语言中如何定义一个数组变量,该变量的数组元素的数据类型为函数指针。并且,定义的同时给出该变量的初始化。

给你一段代码参考一下照着写吧:

//定义函数类型ENCODEPROC,参数表为(BYTE*, int),返回值类型为BOOL
typedef BOOL (ENCODEPROC)(BYTE*, int);

//比如有以下几个ENCODEPROC类型的函数
BOOL encode0(BYTE* cList, int nBytes){/*可以做点东东*/return TRUE;}
BOOL encode1(BYTE* cList, int nBytes){/*可以做点东东*/return TRUE;}
BOOL encode2(BYTE* cList, int nBytes){/*可以做点东东*/return TRUE;}

//定义函数指针数组encodeProc
ENCODEPROC* encodeProc[] =
{
encode0,
encode1,
encode2
};

//使用例子....
BOOL Encode(BYTE* cList, int nBytes, int nMathodNo)
{
return (encodeProc[nMathodNo])(cList, nBytes);
}

我学C的啊~!
指向数组的指针定义:
int *p=&a[0]; <=> int *p;p=&aa[0]; /* 注意不是
*p=&a[0];*/
也可以写成:
int *p=a;