这是一个函数吗?void (*a)(char*, char*);

4
 void  (*a)(char*, char*);

这是一个名为a的函数吗?在C语言中返回空指针吗?


2
您可能想要将cdecl.org加入书签。 - mu is too short
1
上面的链接实际上并没有指向那个地址。这个链接是正确的:cdecl.org/ - akraf
6个回答

7
这是一个名为“a”的函数指针a的函数签名是一个返回void并接受两个char *参数的函数。
有关函数指针的更多信息,请参见函数指针教程

4

它是一个指向函数的指针,该函数接受两个char指针并返回void(参见cdecl.org


3

这是一个函数指针。例如:

void someFunction(char* param1, char* param2) {
   // ...
}

int main(int argc, char* argv[]) {
   char arg1[] = "Hello";
   char arg2[] = "World";
   void (*a)(char*, char*) = &someFunction;
   a(arg1, arg2);
   return 0;
}

2

这是一个名为a的变量声明;它是一个指向不返回任何结果的接受两个char*参数的函数的指针。在调用它之前,您需要为a分配一个实际的函数。


不是的;如果a是指向返回void*的函数的指针,声明应该是void *(*a)(char*, char*); - Jeremiah Willcock

1

它是一个变量,是指向一个返回值为空的函数的指针,该函数接受两个类型为“指向字符的指针”的参数。函数指针被命名为"a"。


1

不是。

它是一个指向接受两个字符串并返回空的函数的指针。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接