默认情况下函数是外部的吗?

cia*_*369 5 c function extern

是一个在其声明和定义中未指定存储类的函数:

void func(void); // declaration

void func(void) { // implementation
    
}
Run Code Online (Sandbox Code Playgroud)

相当于声明和定义中带有 extern 存储类的函数吗?:

extern void func(void); // declaration

extern void func(void) { // implementation
    
}
Run Code Online (Sandbox Code Playgroud)

Vla*_*cow 4

来自 C 标准(6.2.2 标识符的链接)

5 如果函数标识符的声明没有存储类说明符,则其链接的确定与使用存储类说明符 extern 声明时完全相同。如果对象标识符的声明具有文件范围且没有存储类说明符,则其链接是外部的。

  • 否则,C 运行时如何链接到它并在运行时调用它? (3认同)