32.static与extern对函数的作用.md 983 字节
Newer Older
极客江南's avatar
极客江南 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
## static与extern对函数的作用

- 内部函数:只能在本文件中访问的函数
- 外部函数:可以在本文件中以及其他的文件中访问的函数
- 默认情况下所有的函数都是外部函数

- **static 作用**
- 声明一个内部函数

```c
static int sum(int num1,int num2);
```

-  定义一个内部函数

```c
static int sum(int num1,int num2)
{
  return num1 + num2;
}
```

- **extern作用**

+ 声明一个外部函数

```c
extern int sum(int num1,int num2);
```

- 定义一个外部函数

```c
extern int sum(int num1,int num2)
{
  return num1 + num2;
}
```

>+ 注意点: 
>+ 由于默认情况下所有的函数都是外部函数, 所以extern一般会省略
>+ 如果只有函数声明添加了static与extern, 而定义中没有添加static与extern, 那么无效

---

最后,如果有任何疑问,请加微信 **leader_fengy** 拉你进学习交流群。

开源不易,码字不易,如果觉得有价值,欢迎分享支持。