C语言中的lambda函数是什么

Is lambda function in C language

是C语言的lambda函数还是得自己写。 我在互联网上搜索,没有找到任何东西,只有 C++ 和 C#。

从理论上讲,这不是一种 lambda 语言,因为您没有真正的 lambda 类型,它可以被传递并且表现得像一个真实的值。

但是使用函数指针你可以获得非常相似的结果:

typedef int (*lambda)(); // defines lambda as a type which is a pointer to a function that returns an int

int foo() { return 5; }
int bar() { return 10; }

lambda function;
function = foo;
function = bar;

int result = function();