C语言 extern
来源:互联网 发布:ubuntu修改用户名 编辑:程序博客网 时间:2024/06/14 19:56
1 基本含义
extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。
2 extern修饰变量的声明
举例->
如果文件led1.c需要引用led2.c中变量unsigned int a,就可以在led1.c中声明 extern unsigned int a; 然后就可以引用变 量a。
前提 变量a本身是否能够被引用
注意 能够被其他模块以extern修饰符引用到的变量通常是全局变量。extern unsigned int a可以放在led2.c中的任何地方,由于变量作用域问题,个人喜欢将其放在开头或结尾。
3 extern修饰函数声明
从本质上来讲,变量和函数没有区别。
举例->
文件led1.c需要引用led2.c中的函数void delay_ms(),就可以在led1.c中声明 extern void delay_ms();然后就可以引用函数void delay_ms()
4注意点
引用其他模块中函数->
常用方法 如包含这些函数声明的头文件。 解释:比如我在S3C2451_LED.c下可以包含S3C2451_LED.h的头文件,该头文件里有我需要的函数声明和宏替换
区别->
extern 包含头文件 引用函数
extern的引用方式 简洁明了 用extern声明想引用的函数即可。同时,在编译时,会加快程序预处理的过程,提高效率。
阅读全文
1 0
- C语言之extern
- C语言中的extern
- 【C语言】语法--extern
- C语言:extern 讲解
- c语言extern
- c语言中的extern
- C语言中extern
- C语言extern用法
- c语言extern详解
- c语言中的 extern
- C语言 static extern
- C语言extern
- C语言中的extern
- C语言中的extern
- C语言extern
- C语言 关键字extern
- C语言中的extern
- C语言 extern
- 混合高斯模型
- 二叉堆的基本概念与实现
- MySQL RESET MASTER与RESET SLAVE和RESET SLAVE ALL
- javabean总结
- 使用PhantomJS实现模拟登陆(Java爬虫)
- C语言 extern
- 第三周——项目三—求集合并集
- MFC控件的使用方法
- Reflection2017.9.18
- java抽象类练习题
- 一道题
- Java中Jedis操作Redis
- WKWebView 初窥-JS交互探究
- scrapy安装报错