分享
 
 
 

第二章 变量和数据类型

王朝c/c++·作者佚名  2006-01-06
窄屏简体版  字體: |||超大  

简介

任何应用程序都需要处理数据,并需要一些地方来临时存储这些数据。这个存储数据的“地方”被称为内存。内存中不同的位置可以通过唯一的地址来识别。早期的编程语言要求程序员以地址的形式跟踪每一个内存位置以及保存在该位置的值。程序员使用该地址来访问或者改变内存的内容。随着变成语言的发展,通过引入变量这个概念得以简化对内存的访问。

2.1变量

一个应用程序可能会处理多项数据。在这种情况下,应用出呢工序要为每一项数据分配内存。在分配内存时,需要考虑下列两个元素:

1.需要分配多少内存?

2.记下数据被存储在哪个内存地址。

早期,程序员需要使用机器语言(既1和0)来编写他们的程序。如果程序员想临时存储一个值,就需要在计算机内存中分配一个精确的位置来存储该数据。这个存储位置是一个明确的数字或内存地址。

现代编程语言允许使用被称为变量的符号名称来引用用来存储特定值的内存位置。

数据类型句顶了要分配内存大小。分配给变量的名称有助于根据要求和需要重用这些数据。

我们知道在公式中如何使用字母来表示一个数。例如,矩形的面积可以表示为:

Area=A=Length*Breadth=L*B

利息表示为:

Interest=I=Principal*Time*Rate/100=P*T*R/100

字母A、L、B、I、P、T、R都是变量,是各种值的简短表示法。

思考下面的示例:

该示例显示5名学生的分数总和。可以通过下面的指令来显示这个总和:

Display the sum of 24,56,72,36 and 82(显示24、56、72、36和82的总和)

一旦显示出该总和,它就从计算机的内存中消失了。若要计算这些分数的平均值,则必须重新计算这个总和。

一个更好的方法是将这个结果存储在计算机的内存中,然后可以在需要时重用该值。

sum=24+56+72+36+82

此处,sum是一个用来存放这五个数字总和的变量。当必须计算平均值时,实现方法如下:

Avg=sum/5

在C语言中,所有的变量在使用之前必须先声明。

2.2 常量

对于变量而言,其中存储的值在整个生命周期里不必相同。一个变量的生命周期从它被声明时开始,一直延续到超出其作用域时结束。在变量作用域以内的语句都可以访问这个变量的值。他们甚至可以更改变量的值。有时会要求某些项目的值保持不变。

常量就是一个保持不变的值。例如,5是一个常量,它的算术值始终是5,而且不能被任何人更改。类似的,“Black”是一个专门表示黑色的常量。5被称为数字常量,“Black”被称为字符串常量。

2.3 标识符

变量、函数、标签和其他各种用户定义的对象名称被称为标识符。这些标识符可以包含一个或多个字符。表示副的第一个字符必须是字母或下划线(_)。后面的字符可以是字母、数字或者下划线。

C语言中的标识符区分大小写。

2.3.1标识符的命名规则

各种编程语言的标识符命名规则是不一样的。然后,有一些典型的约定。

2.4数据类型

数字

√整数

例如:10或1654789123

√实数

例如:15.22或654.654

√正数

√负数

字符串

例如:John

逻辑值

例如:Y或N

由于存储在变量中的数据类型不同,因此所需的内存空间大小也不相同。

分配给变量的内存空间大小取决于它所纯出的数据的类型。

要为特定的一片数据分配内存,必须声明一个特定数据类型的变量。

声明变量意味着给变量分配一些内存空间。以后将通过变量来引用这部分内存空间。操作系统分配的内存空间大小取决于将要存储到这个变量中的数据的类型。因此,数据类型描述了将要存放到变量中的数据的种类。

声明变量的通用形式是:

数据类型变量名

编程工具通常所使用的数据类型可以划分为两类:

1.数字数据类型-存放数值

2.字符数据类型-存放描述性信息

这些数据类型在不同的编程语言中可以有不同的名称。无论哪种情况,存储的数据是相同的。唯一的区别是,在某工具中使用的变量必须声明为该工具所支持的数据类型的名称。

C语言有五种基本数据类型。其他所有的数据类型都是基于这些数据类型派生的。这五种基本数据类型是:

√int表示整数,通常代表了整数的原始大小。

√float和double用于浮点数。float占4个字节,可以存放六位精度的数字,而double占八个字节,可以存放十位精度的数字。

√char类型占一个字节长度,可以存放一个字符。

√void通常用于声明一个返回空值的函数。

注意:浮点数据用于表示要求小数点精度的值。

2.4.1 基本数据类型和派生数据类型

前面讨论的四种数据类型(char、int、float 和double)在计算机的内存中用于实际的数据表示。可以修改这些数据类型以便更好地适应不同的情况。这样产生的数据类型被称为这些基本数据类型的派生数据类型。

我们使用修饰符来改变基本数据类型以适应不同的情况。除了void类型,其他所有类型前面都可以加上一些修饰符。C语言使用的修饰符有signed,unsigned,long和short。所有这些都可以应用于字符和证书数据类型。

signed和unsigned类型。

整数声明默认为有符号数字。signed最重要的用途是修改char数据类型,char类型默认为无符号值。

unsigned类型指定变量只能取正值。这个修饰副可以与int和float数据类型一起使用。unsigned在某些情况下可以应用于浮点数据类型,但是这样会降低代码的可移植性。

在int类型前面加上unsigned前缀,正数的取值范围将是原来的两倍。

当要求某个整数的长度比正常长度更长或者更短时,会需要使用long和short。short修饰符适用于不必像正常整数长度那么长的数据类型,long修饰符适用于需要比正常整数长度更长的数据类型。

数据的类型极其范围

类型 近似大小(位) 最小范围

Char 8 -128到127

Unsigned 8 0到255

Signed char 8 -128到127

Int 16 -32,768到32,767

Unsigned int 16 0到65,535

Signed int 16 与int相同

Short int 16 与int相同

Unsigned shot int 8 0到65,535

Signed short int 8 与short int相同

Long int 32 -2,147,483,648到2,147,483,647

Signed long int 32 0到4,294,967,295

Unsigned long int 32 0到4,294,967,295

Float 32 六位精度

Double 64 十位精度

Long double 128 十位精度

2.5算术运算符

算术运算符用语执行数字运算。它们可分为两类:一元和二元算术运算符。

二元运算符

C语言中二元运算符的操作与其他语言中的操作相同。运算符+、-、*和/可以应用到几乎所有的C语言所允许的内置数据类型。模运算符(%)计算一个整数除法的余数。

一元运算符

一元运算符有一元减(-)、递增运算符(++)和递减运算符(--)。

递增和递减运算符

C语言包括两个很有用但通常在其他的计算机语言中找不到的运算符,他们是递增运算符(++)和递减运算符(--)。运算符++对操作数加1,而运算符--对操作数减1。

在表达式中使用运算符时,其前置和后置的差别很有用。当运算符位于操作书的前面时,C语言在使用操作数的值之前先执行递增或者递减运算。这称为前置。如果运算符位于操作数的后面,则先使用操作数的值,然后再执行递增或递减运算。这称为后置。

总结

√一个应用程序经常需要处理数据;它需要一些地方来临时存储数据。这个存储数据的“地方”被称为内存。

√现代编程语言允许使用被称为变量的符号名称来引用存储特定值的内存位置。

√对一个程序可以使用的内存位置的数量没有限制。

√常量就是不会发生改变的值。

√变量、函数、标签和其他各种用户定义的对象的名称被称为标识符。

√所有的语言都保留了一些单词供其内部使用。他们被称为关键字。

√C语言中的主要数据类型有字符类型、整数类型、浮点类型、双精度浮点类型和void类型。

√可以使用修饰符来改变基本数据类型,以便适应各种情况。unsigned,short和long是C语言中可用的三种修饰符。

√C语言支持两种类型的算术运算符:一元和二元。

√递增(++)和递减(--)是一元运算符,他们只能对数值变量进行操作。

√二元算术运算有+-*/%,他们只能对数值常量、变量或者表达式进行操作。

√模运算符%只能对整数进行操作,结果是整数除法后的余数。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有