C语言

a.static,static inline,extern inline定义及用法

1.static目的是让该关键词标识的函数只在本地文件可见,同一个程序的其他文件对这个函数不可见,换句话说,就是在其他文件声明一个函数名一样的函数,编译器也不会报错。

2.static inline就是一个静态的内联函数,意思就是这个函数就这么一个,而且没有外部可见性。如果用static inline来定义这个函数,则不会产生函数本身的代码而是将函数的代码全部嵌入调用该函数的地方,而同时该函数也不能被程序的其他文件所调用。

3.extern inline就是一个外部定义的内联函数,它的意思是说这个函数就有内联版本的,也有不是内联版本的,在同一个编译单元里就是内联的,不在同一个编译单元就是非内联的。

b.了解多文件开发的好处,.h和.c文件的异同

<一>
1.避免一而再,再而三地重复编译函数,因为编译器总是以文件为单位工作的。如果一个文件中包含的函数太多,则由于被修改的函数总是少数的几个,所以大多数正确的函数都得重新编译一次。
2. 使程序更加容易管理。可以将程序按逻辑功能划分,分解成各个源文件,便于程序员的任务安排,以及程序调试。
3.把相关函数放到一特定源文件中。
<二>
.h文件是头文件而.c文件是源文件。
1.头文件可以包含源文件而源文件不能包含头文件。
2.头文件在预编译时会替换掉源文件中的include。
3.源文件会被直接编译,而一个头文件如果没有被任何一个源文件所包含,即使这个头文件中有错误也不会被编译器报错。
4..c和.h都是一种文件,.h会包含函数声明、宏定义、结构体定义等,.c文件函数实现、变量定义、函数定义等内容,但编译器对不同的文件有一些不同的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值