static和extend修饰变量的不同点

2017-01-03  本文已影响82人  火星救援

局部变量:

a.static 修饰局部变量

如果一个局部变量被static修饰了,那么这个局部变量就在常量区里面,就不会被回收,直到程序结束才会被回收。

虽然你这个局部变量被static修饰了,但是我们这个局部变量还是有作用域的。

b.被static修饰的局部变量和 全局变量的区别

全局变量 所有的函数都可以访问

被static修饰的局部变量,只能在声明这个变量的函数中使用。

c.extern 不能修饰局部变量。

全局变量:

全局变量分为声明和定义

static修饰全局变量,叫做内部全局变量,只能在当前文件中使用。

extern修饰的全局变量,叫做尾部全局变量,可以在外部文件中使用

如果没有写访问修饰符号,默认就是static

函数:

如果一个函数被static修饰了,那么这个函数就是一个内部函数,只能在当前文件中访问。

如果一个函数被extern修饰了,那么这个函数就是一个外部函数,可以在外部文件中访问。

如果一个函数没有写访问修饰符,那么这个函数默认是extern。

上一篇 下一篇

猜你喜欢

热点阅读