《C程序设计教程与实验指导》数据类型运算符和表达式.pptVIP

《C程序设计教程与实验指导》数据类型运算符和表达式.ppt

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

2.1 标识符和关键字 标识符是程序中用来给变量、函数、数组、类、命名空间起的名称。其命名规则如下: 由大小写英文字母、数字和下划线组成,而且不能以数字开头。 标识符区分大小写。 标识符的有效长度取决于编译系统,如Visual C++规定最长247个字符,Turbo C++规定最长32个字符。一般建议尽量简短。 标识符不能和关键字同名。 关键字 (4)将有符号的整型数据赋给长整型变量,系统要进行符号位扩展。将无符号的整型数据赋给长整型变量时,只需0扩展即可。 (5)将长整型数据赋给整型变量或将整型数据赋给字符型变量,都有可能溢出。例如: char ch=321;溢出后ch的值为A。 §2.6.3 赋值类型转换 (6)同长度有符号整型数据赋给无符号整型变量时,数据将失去符号位功能。例如: unsigned u=-1;则u的值为65535。 (7)同长度无符号整型数据赋给有符号整型变量时,数据将得到符号位功能。例如: int i=65535u;则i的值为-1。 以上(2)、(5)、(6)、(7)将可能改变所赋数据的值。 §2.6.3 赋值类型转换 §2.6.4 强制类型转换 利用强制类型转换运算符将一个表达式的值强制转换成所需类型。即: (类型名)(表达式) 强制类型转换的作用主要有:①使某些数据(例如实型数据)能够进行某种类型(例如求余)运算②设计四舍五入算法,例如将一个实数保留两位小数:设实数f,则(int)(100*f+0.5)/100.0即可实现该算法。③利用动态存储分配建立链表等等。强制类型转换由于是程序员主动进行的类型转换,一般不会发生意想不到的问题。 本节我们介绍了C语言数据类型转换的问题,在自动类型转换、赋值类型转换和强制类型转换中,我们重点要防止赋值类型转换中存在出现的问题,为此,我们在程序设计时要掌握几条原则: (1)要避免数值的变化:避免signed型与unsigned型之间的数据转换;注意计算或输入中数值范围不超过使用类型的数值范围,以防数据溢出,否则定义较高数据类型。 (2)使用数据类型时应尽量避免丢失精度,必要时定义较高的数据类型 §2.6 数据类型转换-小结 §2.7 编译预处理 2.7.1 宏定义 1.不带参数的宏定义 用一个指定的标识符(即名子)来代表一个字符串,它的一般形式为: #define 标识符 字符串 这就是已经介绍过的定义符号常量。如: #define PI 3.1415926 它的作用是指定用标识符PI来代替“3.1415926”这个字符串,在编译预处理时,将程序中在该命令以后出现的所有的PI都用“3.1415926”代替。这种方法使用户能以一个简单的名字代替一个长的字符串,因此把这个标识符(名字)称为“宏名”,在预编译时将宏名替换成字符串的过程称为“宏展开”。#define是宏定义命令。 §2.7 编译预处理 2.带参数的宏定义 这种宏定义不是进行简单的字符串替换,还要进行参数替换。其定义的一般形式为: #define宏名(参数表)字符串 字符串中包含在括弧中所指定的参数。如: #define S(a,b) a*b area=S(3,2); 定义矩形面积S,a是b是边长。在程序中用了S(3,2),用3、2分别代替宏定义中的形式参数a、b,即用3*2代替a*b,因此赋值语句展开为: area=S(3,2); §2.7 编译预处理 2.7.2 文件包含 所谓“文件包含”处理是指一个源文件可以将另外一个源文件的全部内容包含进来。即将另外的文件包含到本文件之中。C++提供了#include命令用来实现“文件包含”的操作。其一般形式为 #include 文件名 或 #include 文件名 * 2 数据类型、运算符和表达式 本章导读 标识符和关键字 数据类型概述 基本数据类型 常值和变量 运算符、表达式与语句 宏定义 其他运算符与语句 cin和cout asm default float operator static_cast union auto delete for private struct unsigned bool do friend protected switch using break double goto public template virtual case dynamic_cast if register this void catch else inline reinterpret_cast throw volatile char enum int ret

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档