C第2章-基本数据类型与表达式(共67张).pptx
主要内容;数据类型的概念;数据类型可以分为:
简单数据类型:值集的数据是不可再分解的简单数据,如:整数类型、实数类型等;
复合数据类型:值集的数据是由其它类型的数据按照一定的方式组合而成,如:向量、矩阵等。;C++数据类型;C++基本数据类型;整数类型;在计算机内部通常用补码表示:
正整数的补码为它的二进制原码表示;
负整数的补码为把相应正整数的二进制表示中各个二进制位取反后得到的整数加1。;实数类型(浮点型);优先级:优先级高的先运算
i+(int)j
s=(s0xF7)//表示把第4位设置为0
对unsignedchar,把字符编码看成正整数。
十六进制:\xhh,如:\x41
特殊表示,如:‘\n’(换行符)、‘\r’(回车符)、‘\t’(横向制表符)、‘\b’(退格符)等p20
转义序列,由\打头的一串符号
操作符“/”用于整型操作数时表示整除,小数点后面的数将舍去,并且不进行四舍五入。
对相邻的两个操作符,按下面规则确定(p36):
unsignedint或unsigned
变量:在程序执行过程中值可变的数据,如:2*PI*r中的r。
1就无法精确地用二进制表示。
否则,如果一个操作数类型为longint,则另一个操作数转换成longint。
而字符串常量可以表示多个字符,其类型为常量字符数组。
-10/3的结果为-3;字符类型;字符类型的内部表示;逻辑类型;空值类型;在C++中,常常
把各种int型、char型以及bool型统称为整型(integraltypes);
把整型和实数类型统称为算术类型(arithmetictypes)。
;sizeof;typedef;数据的表示;常量;字面常量(直接量);整数类型字面常量;整数类型字面常量(续);实数类型字面常量;实数类型字面常量(续);字符类型字面常量;字符类型字面常量(续);字符串类型字面常量;字符常量与字符串常量的区别;;;;符号常量;变量;变量的基本特性;变量的定义与声明;变量的定义与声明(续);变量的定义与声明(续);//
voidg()//定义
{externintx,y;//声明
intz;//定义
z=x+y;
};变量值的输入;;;操作符(运算符);C++操作符的种类;算术操作符;算术操作符(续);操作数的类型转换;常规算术转换规则
(usualarithmeticconversions)p25;整型提升转换
(integralpromotions);
如果其中一个操作数类型为unsignedlongint,则另一个转换成unsignedlongint。
否则,如果一个操作数类型为longint,另一个操作数类型为unsignedint,那么,如果longint能表示unsignedint的所有值,则unsignedint转换成longint,否则,两个操作数都转化成unsignedlongint。
否则,如果一个操作数类型为longint,则另一个操作数转换成longint。
否则,如果一个操作数类型为unsignedint,则另一个操作数转换成unsignedint。
;显式转换(强制类型转换);关系与逻辑操作符;;关系与逻辑操作符(续);位操作;例: s0x10//判别s的第5位(从低位数)是0还是1
s=(s|0x40)//把第7位设置为1
s=(s0xF7)//表示把第4位设置为0;位操作;赋值操作;其它操作符;表达式;左值表达式和右值表达式;;void?mian()
cinid;
关系与逻辑操作符(续)
coutendl;
在实数的内存空间中存储的是尾数和指数两部分,它们均采用二进制表示。
把整型和实数类型统称为算术类型(arithmetictypes)。
const类型名常量名=值;
算术操作符的操作数类型一般为算术类型,有时也可以是枚举类型和指针类型。
intb=2147483647;//int类型中最大的正整数
wchar_t和枚举类型转换成下列类型中第一个能表示其所有值的类型:int、unsignedint、longint、unsignedlongint。
隐式转换是指由编译程序按照某种预定的规则进行自动转换,基本原则:精度低-精度高;
实数类型字面常量(续)
truefalse-false
变量的定义与声明(续)
字符常量是由两个单引号()括起来的一个字符构成,其中的字符写法可以是:;;;;表达式中的类型转换;表达式的副作用问题