将未声明的函数赋予函数指针

Give non-declared function to function pointer

我正在努力理解函数指针的所有这些庞大概念...

是否可以使用未声明的函数初始化函数指针?

例如,函数指针的简单用法是:

void f()
{
  printf("Hello world!");
}
//Somewhere in the program
void (*foo)();
foo = &f;

有什么办法可以跳过f的声明吗?类似的东西:

void (*foo)();
foo = { printf("Hello world!"); }

您所描述的称为lambda functions,这是一种在C 中不可用的机制。您可以将lambda 函数视为匿名函数。

C++ 和 C# 支持。在 .Function pointers, Closures, and Lambda

中阅读更多内容