<分区>
extern int i;// is a declaration
int j; //definition
作者给出了第一个语句是声明,第二个是定义。我认为第二个语句是声明,第一个是定义。
我浏览了 Herbert Schildt 的完整引用 C
<分区>
extern int i;// is a declaration
int j; //definition
作者给出了第一个语句是声明,第二个是定义。我认为第二个语句是声明,第一个是定义。
我浏览了 Herbert Schildt 的完整引用 C
最佳答案
extern int i
...是一个variable declaration ,因为它只告诉编译器“存在一个名为 i
的变量,但它是在其他地方定义的”。
int i
...是一个变量定义,因为它告诉编译器创建实际变量。
关于c - 外部变量是如何定义的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18820403/