Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
请强调以下函数声明之间的区别:
void (*p) (void *a[], int n)
void *(*p[]) (void *a, int n)
void (*p) (void *a[], int n)定义一个指向函数的指针,该函数接受一个void*数组和一个int作为参数
void*
int
void *(*p[]) (void *a, int n)定义了一个指向函数的指针数组,这些函数返回 a void*,并将 avoid*和 anint作为参数。
函数声明也不是,所以没有什么可解释的。
然而,两者都是函数指针的声明。您应该使用一个出色的教程网站。
我还应该建议方便的程序cdecl(或其在线化身);也许您想在有人为您揭晓答案之前自己试一试?
cdecl
(您需要void *(*p[]) (void *, int)在网站中输入;即函数参数没有标识符。)
void *(*p[]) (void *, int)
编辑:没关系,我误读了声明。对不起。
问题是,您声明的是函数指针,而不是人们已经指出的函数。