我读到C中不存在嵌套函数。 然后,我在linux机器上使用cc命令成功执行了以下代码。
#include <stdio.h>
#include <string.h>
int main(){
float dummy(){
printf("hello\n");
}
dummy();
return 0;
}
我得到了输出hello
。
如何播放? 我的编译器是否支持嵌套函数?
答案 0 :(得分:1)
GNU C supports nested functions as an extension。几乎可以肯定,Linux计算机上的cc
二进制文件是指向gcc
的符号链接。
答案 1 :(得分:1)
嵌套函数在标准C中不存在。但是,某些编译器(例如GNU)可能支持它作为扩展。