C语言基本类型字符型(char)用法介绍.docxVIP

C语言基本类型字符型(char)用法介绍.docx

  1. 1、本文档共6页,可阅读全部内容。
  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文档。上传文档
查看更多
C语言基本类型:字符型(char)用法介绍 1.字符型(char)简介 字符型(char)用于储存字符(character),如英文字母或标点。严格来说,char 其实也是整数类型(integer type),因为 char 类型储存的实际上是整数,而不是字符。计算机使用特定的整数编码来表示特定的字符。美国普遍使用的编码是 ASCII(American Standard Code for Information Interchange 美国信息交换标准编码)。例如:ASCII 使用 65 来代表大写字母 A,因此存储字母 A 实际上存储的是整数65。注意:许多IBM大型机使用另一种编码——EBCDIC(Extended Binary-Coded Decimal Interchange Code 扩充的二进制编码的十进制交换码);不同国家的计算机使用的编码可能完全不同。 ASCII 的范围是 0 到 127,故而 7 位(bit)就足以表示全部 ASCII。char 一般占用 8 位内存单元,表示ASCII绰绰有余。许多系统都提供扩展ASCII(Extended ASCII),并且所需空间仍然在 8 位以内。注意,不同的系统提供的扩展 ASCII 的编码方式可能有所不同! 许多字符集超出了 8 位所能表示的范围(例如汉字字符集),使用这种字符集作为基本字符集的系统中,char 可能是 16 位的,甚至可能是 32 位的。总之,C 保证 char 占用空间的大小足以储存系统所用的基本字符集的编码。C 语言定义一个字节(byte)的位数为 char 的位数,所以一个字节可能是 16 位,也可能是 32 位,而不仅仅限于 8 位。 2. 声明字符型变量 字符型变量的声明方式和其它类型变量的声明方式一样: char good; char better, best; 以上代码声明了三个字符型变量:good、better,和 best。 3. 字符常量与初始化 我们可以使用以下语句来初始化字符型变量: char ch = A; 这个语句把 ch 的值初始化为 A 的编码值。在这个语句中,A 是字符常量。C 语言中,使用单引号把字符引起来就构成字符常量。我们来看另外一个例子: char fail; /* 声明一个字符型变量 */ fail = F; /* 正确 */ fail = F; /* 错!F 是字符串字面量 */ 把字符用双引号引起来构??字符串字面量,所以第三个语句是错误的。我们会在后续的教程中讨论字符串,现在暂且把它放下。 因为字符实质上是以数字的形式存储的,所以我们可以直接使用数字来初始化字符变量,或者给字符变量赋值: char ch = 65; /* 不好的风格 */ 在 ASCII 中,A 的编码是 65,所以对于使用 ASCII 的系统来说,这个语句等同于 char ch = A;。使用非 ASCII 的系统中,65 代表的不一定是 A,而有可能是其它任何字符,所以使用数字来初始化字符变量,或者给字符变量赋值是一种不好的风格,因为移植性太差了!但是,使用字符常量(例如 A)来初始化字符变量,或者给字符变量赋值,字符变量得到的一定是我们所期待的字符的编码值。例如: char ch = A; 无论在使用任何编码的系统中,ch 都能够得到字符 A 所对应的编码值。这是因为编译器会自动把 A 转化成 A 所对应的编码值。因此,我们应该使用字符常量来初始化字符变量,或者给字符变量赋值;而不要用数字。 有趣的是,C 使用 int 类型来处理字符常量,而不是 char 类型。例如,在使用32位 int 的ASCII 系统中,以下代码 char ch = C; C 的编码值 67 被存储于 32 位的内存单元中;不过 ch 仍然存储于 8 位的内存单元中,只是它的值变成了 67。因此,我们可以定义形如 good 的古怪字符常量。因为每个字符的编码值占用 8 位的内存单元,所以这个常量刚好可以存储于 32 位的内存单元。然而,用这种字符常量初始化字符变量

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档