为什么 C 语言被设计成函数需要先声明才能被使用?

查看 206|回复 13
作者:gegeligegeligo   
纯粹是因为历史问题吗
anytk   
编译和链接,函数声明表明其符号特征,在链接时才能定位精确和一致。
ho121   
印象当中不是这样。
可以不声明直接调用,编译期间会有个 warning ,运气不好的话链接会失败
NightFlame   
@ho121 那你记错了
iOCZS   
怎么隐藏函数呢?
shadowyue   
施法当然要大声的把招式名称念出来才帅气
proxytoworld   
确实是历史原因,c99 标准还只能在函数开头声明变量。
proxytoworld   
@NightFlame 系统库可以这样玩,不引入头文件,直接使用函数也能跑
tianhehechu   
为了提高编译效率,降低实现复杂度,否则编译时就要遍历整个代码去寻找这个函数。C 标准出来时,机器性能没那么高,编译速度很重要。
darksword21   
刚开始学的时候感觉还挺符合直觉的….可能就是按直觉设计的吧
您需要登录后才可以回帖 登录 | 立即注册

返回顶部