C语言知识总结
来源:互联网 发布:网络任务源码 编辑:程序博客网 时间:2024/06/06 02:51
static变量的用法
这是首次用Markdown来写我的首个msdn博客,有不合理或错误的地方请指出。学过Java的朋友都知道,static是静态变量,那么C语言里static的用法是什么呢?一般初学C语言的人是不会接触到static的。我是在学stm32里接触到这个变量的,后来查网上的资料发现解释很细很专业,今天我就通俗粗将一下用法。
那么就正式介绍static,static有两种用法一个是函数中的static用法,在函数中尤其是自定义函数中经常会见到被static定义的变量,例如:
int Sum();int main()//求1-100的和{ int sum=0; for(int i=1;i<=100;i++) { sum += Sum(); }}int Sum(){ static int n=0; //定义整型静态变量n n++; return n;}
上面的代码体现了局部static变量的特性,首先在自定义函数里static声明的变量只能被调用一次而且变量并不会伴随函数的结束而清空,也就是说只有第一次调用Sum()函数时才会运行n=0的赋值语句,并且在n++后并且在Sum()函数结束时变量n并不会被清除,第二次调用函数时n的初值变为1.有点类似指针的功能。
static的另一个用法是全局静态变量,当学习C语言深入时,一个源程序由多个源文件组成时,非静态变量在其中一个文件定义后其他文件均可调用该变量,而被static定义的全局静态变量则相反,该变量只能在该源文件中被调用,也就是限制了作用域。有些类似于Java里面的private对象声明。以后肯定会持续更新……
1 0
- c语言 知识总结
- C语言知识总结
- C语言知识总结
- C语言知识总结
- C语言知识总结
- C语言知识总结
- C语言知识总结
- c语言知识总结
- c语言面试知识总结
- c语言知识总结2
- 嵌入式C语言编程小知识总结
- 嵌入式C语言编程小知识总结
- C语言深度解剖 关键知识总结
- 嵌入式C语言编程小知识总结
- 雪*C语言核心知识总结一
- 雪*C语言核心知识总结二
- 雪*C语言核心知识总结三
- 雪*C语言核心知识总结四
- 神经网络学习笔记(三) 梯度下降法
- python3 基于socket的irc机器人
- ArrayAdapter、SimpleAdapter和BaseAdapter
- GFP_ATOMIC or GFP_KERNEL 区别
- JS程序的先后执行顺序
- C语言知识总结
- poj 2034 Anti-prime Sequences
- 《Java多线程编程核心技术》(三)线程通信
- linux添加tomcat到服务中
- XUtils之DButils用法简介,非常容易使用
- plsql编程
- HDU 5900 QSC and Master(区间DP)
- Java语言本身很简单,很容易学和使用
- RFID技术在槟榔谷中的应用