c语言可以在一个函数内部定义另外一个函数吗?

如题
2024-11-24 14:18:18
推荐回答(1个)
回答1:

///////在别的地方找的,看看///////////
C++标准没规定其可以,而某些编译器可能增加了此功能,但毕竟是非标准的。
但你可以使用
函数对象
替代
函数。
以下代码通过
dev-cpp4992

vc++2005
的编译测试:
int
fun1(
int
a,
int
b,
int
c
)
{
struct
fun2
{
int
operator()(
int
a,
int
b
)
{
return
a+b;
}
}
fun2;
return
fun2(a,b)+c;
}
#include

int
main()
{
std::cout
<<
fun1(1,2,3)
<<
std::endl;
return
0;
}