extern int func(); int (*fp)() = func;
当一个函数名出现在这样的表达式中时, 它就会 ``蜕变'' 成一个指针 (即, 隐式地取出了它的地址), 这有点类似数组名的行为。
通常函数的显示声明需要事先知道 (也许在一个头文件中)。因为此处并 没有隐式的外部函数声明 (初始式中函数名并非一个函数调用的一部分)。
参见问题 1.8 和 4.8。