keil中extern
时间: 2023-11-21 11:16:40 浏览: 57
在Keil中,`extern`关键字用于声明一个全局变量或函数,表示该变量或函数是在其他文件中定义的。它用于告诉编译器该变量或函数的定义在其他文件中,并且可以在当前文件中使用。
例如,如果你在一个源文件中声明了一个全局变量,在其他源文件中定义了这个全局变量,你可以在声明的地方使用`extern`关键字来引用该全局变量。这样可以避免在每个文件中重新定义该全局变量。
示例代码如下:
```c
// file1.c
int globalVar = 10; // 定义全局变量
// file2.c
extern int globalVar; // 声明全局变量
int main() {
int localVar = globalVar; // 使用外部全局变量
// 其他代码...
return 0;
}
```
在上面的示例中,`file1.c`文件中定义了全局变量`globalVar`,而`file2.c`文件中使用`extern`关键字声明了全局变量`globalVar`,使得在`main()`函数中可以引用`globalVar`而不需要重新定义。
需要注意的是,`extern`关键字仅仅是用于声明,不会分配内存空间。实际的内存分配和初始化发生在定义的地方。
相关问题
Keil5 extern失败
对于您的问题,我了解到Keil5的extern关键字用于在C或C++程序中声明全局变量或函数,以使它们可以在其他文件中使用。可能出现extern失败的原因可能是因为变量或函数定义不正确或存在语法错误。建议您仔细检查变量或函数的定义和使用是否正确。如果您需要更多帮助,请提供更具体的错误信息和代码段以便更好地了解问题所在。
keil里extern的用法
在Keil中,extern关键字用于声明一个在其他文件中定义的全局变量或函数,以便在当前文件中使用。
例如,在一个文件中定义了一个全局变量或函数,如下所示:
```
/* file1.c */
int global_variable;
void function_name(void)
{
/* 函数代码 */
}
```
如果要在另一个文件中使用该全局变量或函数,可以在该文件中使用extern关键字进行声明,如下所示:
```
/* file2.c */
extern int global_variable;
extern void function_name(void);
int main(void)
{
/* 使用全局变量和函数 */
global_variable = 10;
function_name();
return 0;
}
```
通过在文件2中使用extern关键字声明,就可以在该文件中使用文件1中定义的全局变量和函数了。需要注意的是,使用extern声明的变量或函数在当前文件中只是声明,并不是定义,因此在使用之前必须要在其他文件中定义好该变量或函数。