gpt4 book ai didi

c - 在C中,功能的extern关键字完全必要吗?

转载 作者:行者123 更新时间:2023-11-30 17:27:02 25 4
gpt4 key购买 nike

在我看来,即使我在没有extern声明的情况下引用另一个文件中的函数,gcc仍可以编译该单元。所以我想知道是否在函数的任何地方都需要extern声明?我知道您需要外部变量。

最佳答案

函数默认情况下具有外部存储类说明符(除非将它们显式定义为静态)

extern Storage Class Specifier


  如果声明描述了一个函数或出现在一个函数之外,并且描述了具有外部链接的对象,则关键字extern是可选的。如果未指定存储类说明符,则假定该函数具有外部链接。
  
  ....
  
  由于声明不兼容,因此在没有存储类说明符的情况下,在存储类说明符为静态的情况下包含相同功能的声明是错误的。在原始声明中包括extern存储类说明符是有效的,并且该函数具有内部链接。

关于c - 在C中,功能的extern关键字完全必要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26552996/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com