C语言语法笔记 – 自定义函数的相关知识 变量的存储类型
本文由发表于6年前 | C语言 | 暂无评论 |  被围观 4,870 views+

自定义函数:

函数分为声明部分和执行部分

函数的声明与定义:

函数的声明在程序的数据声明部分(文件包含命令和main函数之间),函数的定义的位置可以在调用它的函数(一般在main函数之外)之前也可以在调用它的函数之后,也可以位于其他的源程序模块中。

使用函数的优点:
(1)使用函数可以控制任务的规模
(2)使用函数可以控制变量的作用范围
(3)使用函数可以可以由多人协作完成程序的开发
(4)使用函数可以重新利用已有的、调试好的、成熟的程序模块(函数)
局部变量和全局变量


局部变量:

在语句块内定义的变量称之为局部变量,又称为内部变量,仅在定义它的语句块内有效,并且拥有自己独立的存储空间。


全局变量:

在函数之外定义的变量成为全局变量。

如果在同一个源文件中,全局变量和局部变量同名,则在局部变量的作用范围内,全局变量不起作用,即被“屏蔽”。


说明:

(1)一个函数中既可以使用本函数的局部变量,又可以使用有效的全局变量。
(2)利用全局变量可以增加函数联系的渠道,从而得到一个以上的返回值
(3)全局变量一般第一个字母用大写表示
(4)建议在一般情况下不要使用全局变量,因为全局变量一直占用存储空间,降低ile函数的通用性和程序的清晰性,容易出错。
变量的存储类型:

(1)自动型变量

auto int i=1;
auto关键字只能用于定义局部变量,为默认的类型

(2)寄存器型变量

register

(3)静态型变量

static

该变量只有在所在的函数内有效,退出该函数时该变量的值仍然保留,下次进入后仍然可以使用。退出程序时值才消失。

(4)外部型变量

extern

C程序在编译时当遇到extern,先在本文件中找外部变量的定义,如果找到,就在本文件中扩展作用域,如果找不到就在连接时从其他的文件中找到外部变量的定义如果找到,就将作用域扩展到本文件,否则按出错处理。

在高级语言的学习中一方面应数量掌握该语言的语法,因为它是算法实现的基础,另一方面必须认识到算法的重要性,加强思维训练,以便写出高质量的程序。

getchar() getch() getche()函数和putchar() putch()函数
putchar(c) putch(c) 把单个字符c输出到标准设备上
getchar() getche() getch()函数用于从终端输入数据
getchar() 按enter键之后才接受数据,只接收第一个数据
getch()和getche()在输入一个字符后立刻被函数接受,不用按enter键。getch()不回显输入的数据 getche()显示输入的数据
除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/c-language-syntax-notes-custom-function-the-type-of-knowledge-stored-in-the-variable.html
arthinking Java技术交流群:280755654,入门群:428693174 more
分享到:
 
2011 8/30
如果您有更好的原创技术博文或者观点,欢迎投稿:admin@itzhai.com,或者关注订阅左侧浮动面板的微信号订阅IT宅itread)发送消息。
C语言推荐专题
文章评论
    没有评论
给我留言

有人回复时邮件通知我
C语言的相关文章
随机文章 本月热门 热评
1 为什么API文档如此重要 2013/1/12
2 C++语法笔记 – 群体类和群体数据 类模板 2011/9/4
3 数据结构笔记 – 排序算法 优化冒泡排序算法 2011/9/20
4 Javascript笔记 – javascript中的函数 2012/5/22
5 关于学习底层编程和高级语言的区别与联系 2011/5/4
6 JSF笔记 – 托管Bean的详细介绍 2011/12/2
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
Mr.5's Life 白天是一名程序员,晚上就是个有抱负的探索者
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.