第四章节如何存储和获取数据.pptVIP

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章节如何存储和获取数据

第4章 如何存储和获取数据——变量及数据类型 上一章中读者对C语言有了一个大概的了解,认识了函数,关键字,变量和数据类型。数据和操作是构成程序的两个最基本的要素。本章详细讨C语言描述数据的形式和对数据的基本操作。 4.1 二进制、八进制、十六进制 二进制、八进制、和十六进制是计算机中常用的进制形式。N进制的计数法,就是“逢N进一”。 (1)二进制 二进制数是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”, (2)八进制 八进制数是用0-7共8个数码来表示的数。它的基数为8,进位规则是“逢八进一”, (3)十六进制 十六进制有0-9和A-F16个字符表示。它的基数是16,进位规则是“逢十六进一”, 把十进制、二进制、八进制、十六进制对应起来查看进制转换表如所示。 4.2 计算机中如何表示数据——字节和位 程序员编写的程序以及所使用的数据在计算机的内存中是以二进制位序列的方式存放的。典型的计算机内存段二进制位序如下: …0001000101010101000101010111011001010010100100010010010010…. 上面的二进制位序里,每一位上的数字,要么是0,要么是1。在计算机中,位(bit)是含有0或者1值的一个单元。在物理上,它的值是一个负或是一个正电荷。也就是计算机中可以通过电压的高低来表示一位所含有的值。如果是0,则用低电压表示,如果是1,则用高电压表示。 在上面的二进制位序这个层次上,位的集合没有结构,很难来解释这些系列的意义。为了能够从整体上考虑这些位,于是给这些位序列强加上结构的概念,这样的结构被称作为字节(byte)和字(word)。通常,一个字节由8位构成,而一个字由32位构成。或者说是4个字节构成。 4.3 内存是存储数据的“房间”——认识计算机内存 计算机中的内存是以位为最小存储单位的。通过对内存进行组织,可以引用特定的位集合。把计算机的内存起始位编号为1,每隔8位编号增1,也就是以字节为单位,每隔一个字节编号向上加一,可以对计算机所有内存进行编号。如表4?3所示。 4.4 数据类型 在前面的章节里,声明变量的时候需要指明数据类型,声明函数的时候,也需要指明函数的返回值数据类型。数据类型是对程序所处理的数据的“抽象”,将计算机中可能出现的数据进行一个分类,哪些数据可以归结为一类,哪些数据又可以归结为另一类。比如整数1,2,3,-1,-2,0,1000,归结为整数类型;带小数点的数据,比如12.1,2343.34,-23434.33,归结为实数类型。 C语言规定,在程序中使用的每一个数据,必须指定其数据类型。本节不做任何解释,先请读者思考,C语言这么规定是为了什么原因。在C语言中,提供了非常丰富的数据类型,如列出了C语言提供的所有类型: 4.4.1 整数类型 整数是日常生活和计算机中用得最频繁的数据类型,也比较容易理解。整数从数学意义上来说就是从负无穷到正无穷之间的任意整型的数据,也就是任意自然数(如1,2,3,4,5)以及它们的负数或0。如果用十进制表示一个自然数,十进制的位数越多,表示的整数也越大。在计算机中用二进制表示数据,二进制的位数不能无限使用,所以在计算机中,整数有一定的大小限制,只可能在一定的范围之内。 在以前内存“寸土寸金”的时代,哪怕是为了节约2个字节的内存,也是非常有必要的。所以C语言的整数类型,又分为短整型(short)、普通整型(int)和长整型(long)三种。C标准并没有具体规定各种整型应该占多少字节,只是要求int型占用的长度应大于或等于short,而又小于或等于long型占用的字节。不同的C语言编译器可能有不同的规定。一般来说,short占用2个字节(16位),int占用4个字节(32位),long占用4个字节(32位)。 4.4.2 整数的正负——有符号和无符号 上面论述的只关注了正整数,负数在计算机中该如何表示呢?请读者跟随笔者的推理过程来得到一个解决方案。正数和负数是两种情况,计算机又是一个很笨的东西,要区分两种情况,就必须有一个标记来表示是哪种情况。两种情况,用二进制的一位刚好可以表示,比如用0表示正数,1表示负数,刚好可以区分清楚。那么一个4字节也就是32位存储单元的整数,应该用哪一位表示数据的正负号呢?最简单的方法就是用最高位(就是最左边那一位)了。C语言中确实就是用最高位来表示一个整数的正负号,0表示为正,1表示为负。 某些时候,可能并不需要正负号,比如使用自然数的时候,如记录中国的人口,考试分数,年龄等。那么就可以不要符号位,而节约一个二进制位,从而可以表达的数就更大了。于是C语言提出了有符号和无符号的概念。 4.4.3 实数类型 在计算机中表示整数比较简单,但表示带有小数点的数据却稍微麻烦了一些。如何

您可能关注的文档

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档