- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.2变量 2.2.1 变量的概念 2.2.2 变量的定义和使用 2.2.3 变量的初始化 2.2.1 变量的概念 变量是在程序运行过程中,其值会发生变化的量。 1、变量的命名 在C语言中,变量要有名字,该名字是一个标识符。标识变量的标识符称作变量名。在本质上,他是一个或一组连续的存储器单元的名字。 我们在给变量命名时,应尽可能做到“见名知意”。例如,选用month、time、count、name 、weight等标识符,给具有相应含义的变量命名。这样,可提高程序的清晰度和可读性。但应当注意不要和C语言的保留字同名。 2、变量的地址和值 变量是一种数据,他具有三种基本的属性:变量的值属性、地址和类型属性。 对于给定两个变量month和date,我们虽然能理解他们的含义,但从字面上看不出他们的值各是多少。实际上,从图2.2可以看出,他们分别代表存储器单元ffde和ffdc的名字,存储器单元中的内容是他们的值。因此,有month的值为7,date的值为25。 这里,变量month的值为7体现了他的值属性;地址为ffde反映他的地址属性。由此可知,变量名和变量值是两个不同的概念。 实际上变量名是一个与某一存储单元相联系的符号地址,而变量值是指存放在该存储单元中的数据。换而言之,每一个变量具有两种值,其一是变量的值,其二是变量的地址值。这两个值也许会碰巧相等,例如,7号单元中存放了数值7,但是,如同7号宿舍单元中住了7个人一样,这些相等的数字显然绝不是同一概念。 在程序中,我们经常会从变量中存取数据,实际上是通过变量名找到相应单元的地址,再对该地址单元进行写入或读出数据操作。 图2.2 变量名、值和地址的关系 3、变量的类型 每一个变量都具有类型,类型是变量的基本属性,那么,什么是变量的类型属性呢? 通俗地说,对于任一变量,都要解决两个基本问题:其一是变量存放在哪里?静态还是动态存放?存放周期有多长?变量的作用范围有多大?其二是变量的取值范围有多大?占有多大存储空间?在C语言中,变量的类型属性就涵盖了这些具体的细节。概括地说,变量的类型属性包含有变量的存储类型和变量值的数据类型双重含义。 变量的存储类型用于指定变量的存储区域、作用域。他是C语言的重要特点之一。他体现了变量的物理特性,使C语言具有低级语言的某些功能。数据类型是C语言中允许使用的数据的种类(如整型数据、实型型数据、字符型数据等等)。各种数据类型决定了变量的存储容量、数据的取值范围及精度。C语言的数据类型包括基本类型、构造类型、指针类型和空类型。 图2.3 变量类型的分类 2.2.2 变量的定义和使用 1、变量的定义 在C语言中,变量在使用之前必须加以定义,以确定变量的数据类型和存储类型和他的名字。变量定义的一般形式为: [存储类型]数据类型变量名表; 其中,存储类型用于指定变量的存储区域和作用域;数据类型用于指定每一变量所需的存储容量和数据的取值范围及精度,他必须是C语言指定的类型标识符。变量名表由一个或多个变量名组成,如果有多个变量名,相互之间用逗号“,”分隔。最后用分号“;”作结束符。 2、整型变量 表2.3 Turbo C2.0中各类整型数据的表示、范围和所分配的字节数 3、实型变量 只能存放和处理实型数据的变量称实型变量。和整型变量类似,其定义形式如下: [存储类型]实型类型变量名表; 其中,实型类型有float(单精度)、double(双精度型)、long double(长双精度型)。 数的表示范围和精度详见表2.4。 表2.4 Turbo C中各类实型数据的表示、范围、所分配的字节数 4、字符变量 字符变量用来存放一个字符常量,字符变量的定义形式如下: char 变量名表; 例如: char chara,charb,c1; 可以使用以下语句给他们赋值: chara =’a’; charb =’b’;c1=’1’; 在处理字符变量时,要注意: ① 一个字符变量只能存放一个字符常量或整数0~255,不能存放字符串常量。 ② 字符变量在存储单元中存放的是字符的ASCⅡ码,而不是字符本身。例如,如图2.2所示,字符变量chara在存储器中存放的是字符’a’的ASCⅡ码97。而charb中存放的是字符’b’的ASCII码98。 ③ 取决于格式控制符“%c” 和“%d”,一个字符数据既可以以字符形式输出,也可以以整数形式输出。以字符形式输出时,是将存储单元中的ASCⅡ码转换成相应字符,然后输出。以整数形式输出时,直接将ASCⅡ码作为整数输出。 ④ 与字符常量一样,字符变量可以和整型数据互换使用,并可进行算术运算。但通常只作+、- 运算,且其结果应是界于0~255之间的整数,作其他运算或值超出规定范围都是
文档评论(0)