[局部变量]C语言二级必备知识,全局变量和局部变量,一看就会的C语言知识( 二 )
其实 , 当我们在定义函数和变量的时候 , 应该声明数据类型和存储类别 。数据类型就是整形 , 浮点型等 , 那存储类别又有什么呢?
C语言的存储类别有四种:
自动变量 (auto 变量)
静态局部变量 (static 变量)
寄存器变量 (re'gister 变量)
外部变量 (extern 变量)
auto 变量:
我们在定义 int a ;的时候 , 实际上就是: auto int a ;
static 变量:
例如一下程序: #include
int add (int a) {int c= 3;c= c+1;returna+c }int main () {}
文章图片
文章图片
我们可以看到当我们每次调用add函数的时候 , c的值又会初始化到3 , c=c+1的赋值语句 , 只在本次调用起作用 , 所以我们在这也能看出来c是动态分配的 。但是我们在对比一下程序:#include
int add (int a) {staticint c= 3;c= c+1;returna+c; }int main () {int a=1;printf ("%d",add(a)); }
文章图片
文章图片
这里就能看出static变量的区别了 。
register 变量
【[局部变量]C语言二级必备知识,全局变量和局部变量,一看就会的C语言知识】又叫寄存器变量 , 计算机在进行计算的时候 , 通常要从外部取数据 , 那为了提高执行效率 , 我们可以将变量存放在寄存器也就是在CPU的寄存器中 。当程序执行的数据特别多的时候 , 我们能够看出明显的区别 。
推荐阅读
- 凤凰网安徽综合:除了Scratch,2020年热门的少儿编程语言还有哪些
- 「」微软翻译器和其他产品现在提供十种印度语言实时翻译服务
- 「技术」自然语言处理技术可提升创新效率
- 科技:专注自然语言处理等人工智能技术落地应用 虎博科技助推金融科技监管创新
- 『』40种语言、9项推理任务,谷歌发布新的NLP基准测试Xtreme
- #CDA数据分析师#2020年软件工程现状:Python或将成为第一大编程语言
- 『服务器』流量过多服务器不堪重负,美国急招精通COBOL语言“古董”程序员
- 「服务器」教你使用Websockets和Go编程语言构建实时聊天应用程序
- 「编程语言」2020年最具前景的编程语言
- 「量子」物理学家发明新方法,可以识别和表征:各种拓扑不变量的量子态!
