C++02数据类型与表达式选编.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
无符号整型数存储说明 无符号整型数存储方式:没有符号位,原码存储。如2字节无符号整数存储: 2字节无符号整数范围: 0≤x≤216-1 即 0≤x≤65535 实型数存储说明 在程序中的实数:写成小数形式或是指数形式。如314.159或314.159e0,31.4159e1,3.14159e2, 0.314159e3等。 在内存中的实数:都是以规范化的指数形式存放。 字符型数存储说明 在程序中的字符常数:一对单引号括起来的一个字符,且只能包括一个字符,如‘a’、‘#’、‘%’、‘D’、‘\12’等字符型常数;ab则错; 在内存中字符存储:有符号、无符号的字符型数都是以一个字节存放,值是字符的2#的ascii代码值。 有符号字符值范围:-27~27-1,即 -128~127 无符号字符值范围:0~28-1,即 0~255 字符型数存储说明 常用的特殊字符—P.24 名称 符号 空字符(null) \0 换行(newline) \n 换页(formfeed) \f 回车(carriage return) \r 退格(backspace) \b 响铃(bell) \a 水平制表(horizontal tab) \t 垂直制表(vertical tab) \v 反斜线(backslash) \\ 问号(question mark) \? 单引号(single quote) \’ 双引号(double quote) \” 4、输出时的自动转换? 格式转换符与输出数据类型相一致,否则得到错误结果(不提升,不降格)。 例如: printf( “%d\n” , 3.14 ) ; //输出 –31457 printf( “%u\n” , 3.14 ) ; //输出 34079 printf( “%f\n” , 100 ) ; //运行时刻出错 printf( “%u\n” , -1 ) ; //输出 65535 经验:根据输入/输出数据的类型,严格选用相容的格式匹配符。 main( ) { int a, b, sum; a=123; b=456; sum=a+b; printf(“%d\n” , sum) ; } 自动转换注意事项: 负数转换为无符号数时,将丢失符号位功能,得到不正确的数据; 如:int m; unsigned int um; m=-2; um = m; //um为何值?——小心! 降格转换时,数据的正确性受限于目标类型的有效范围限制。 如:int m; float x; x=3276789.0; m = x; //m为何值?——小心! main( ) { int a, b, sum; a=123; b=456; sum=a+b; printf(“%d\n” , sum) ; } 二、强制转换 将变量从一种类型强制转换成另一种类型,满足表达式、函数或I/O的需要。 语法:(类型标识符)表达式 float a = 12.8 , b = 3.6 ; int m=1 ; printf( “%d\n” , a%b ) ; //有错 printf( “%d\n” , (int)a%(int)b) ; //正确 printf( “%f\n” , m/3 ) ; //输出0.0 printf(“%f\n”,m/3.0)或printf(“%f\n”,float(m)/3); //输出0.333 注意事项: 各种类型标识符都可以用作强制类型转换符; 对变量作了强制类型转换后,其原来类型不变(一次有效)。 BOOL运算包括关系、逻辑、条件运算,运算结果是逻辑值( 真/假,TRUE/FALSE,C中为 1 / 0 ) (1)关系运算符:、=、、=、= =、!= 例如:ab;a==b;(b*b-4*a*c)d;a+b=c+d;a!=b 优先级:、=、、=同级 大于 = =、!=同级; 结合性:自左向右。 §2.3.4 关系运算( P.56) (2) 关系表达式 用关系运算符连接算术表达式,叫关系表达式。关系表达式的值是逻辑值( C中用整数表示) : 成立取1值(真),不成立取0值(假)。 int a,b,c,d; a=1;b=5; cout (ab) (ba) (b==a) (b!=a); a=1;b=5;c=a==

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档