




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、*1*2主要内容主要内容 2.1 保留字和标识符保留字和标识符 2.2 C+的基本数据类型的基本数据类型 2.3 常量和变量常量和变量 2.4 基本运算符和表达式基本运算符和表达式 2.5 类型转换类型转换*3简单地说:简单地说:结构化结构化程序程序 = 数据结构数据结构 + 算法算法C+ 程序的构成:程序的构成:(1)数据描述)数据描述(2)执行步骤()执行步骤( 算法)算法)例例1.1一个简单的一个简单的C+程序程序 *42.1 保留字和标识符保留字和标识符2.1.1 保留字(保留字(Reserved Word or Keyword) C+语言自身使用的,已有特殊含义和用途的英文语言自身使
2、用的,已有特殊含义和用途的英文单词称为单词称为保留字保留字或或关键字关键字。 如例如例1.1中的类型说明符中的类型说明符 int,用于定义整型变量。,用于定义整型变量。 用户不能将其作为自己的变量名或函数名使用。用户不能将其作为自己的变量名或函数名使用。*5数据类型说数据类型说明符与修饰明符与修饰符符bool char wchar_t class const double enum float int long short signed struct union unsigned void volatile存储类型说存储类型说明符明符auto extern inline register st
3、atic访问说明符访问说明符friend private protected public其它说明符其它说明符asm explicit namespace operator template this typedef typename using virtual 语句与标号语句与标号break case catch continue default do else for goto if return switch throw try while 运算符及逻运算符及逻辑值辑值delete false new sizeof true表表2-1 C+常用关键字及分类常用关键字及分类*6 还有一些关
4、键字本书未介绍: const_cast dynamic_cast reinterpret_cast static_cast export mutable typeid 下面可用一些关键字代替逻辑运算符:and and_eq bitand bitorcompl not or or_eqxor xor_eq not_eq*72.1.2 标识符标识符 标识符标识符(identifier): 有效字符序列,用来标识用户自有效字符序列,用来标识用户自己定义的己定义的 变量名、符号常量名、变量名、符号常量名、 函数名、数组名、类函数名、数组名、类型名、文件名等;型名、文件名等; 命名规则命名规则:只能由字
5、母、数字和下划线三种字符组成,只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线,最大长度为且第一个字符必须为字母或下划线,最大长度为 1 247 个字符。个字符。 见名之意!见名之意!合法标识符如合法标识符如: (有时用匈牙利命名法)(有时用匈牙利命名法) 如如: MyName average GetDay StudentName _above Lotus_1_2_3 非法标识符如非法标识符如: M.D.John $123 3Dmax*82.2 数据类型数据类型 数据在计算机的内部表示;数据在计算机的内部表示; 该数据占用的内存空间及所表示的值的集合;该数据占用的内存空间及
6、所表示的值的集合; 在该数据上的一系列操作。在该数据上的一系列操作。*9*10数据类型数据类型基本类型基本类型导出类型导出类型整型整型实型实型字符型字符型空类型空类型(无值型无值型)逻辑型逻辑型 bool单精度型单精度型双精度型双精度型数组数组指针指针结构体结构体共用体共用体枚举类枚举类类类不论是变量还是常数,在计算机内部都要按照某不论是变量还是常数,在计算机内部都要按照某种形式存放,存放形式由数据类型决定。种形式存放,存放形式由数据类型决定。C+ 的基本数据类型的基本数据类型*11以上基本类型数据以上基本类型数据占内存字节占内存字节不相同,不相同,因此因此数值范围数值范围也也不同,不同,见表
7、见表 2-1 及表及表 2-2类型标识类型标识名称名称占用字节数占用字节数 取值范围取值范围char字符型字符型1128 127int 整型整型4231(2311)float实型实型41038 1038double双精度实型双精度实型810308 10308bool逻辑型逻辑型1常量常量true和和falsevoid空类型空类型无值无值 各种类型占用内存及取值范围各种类型占用内存及取值范围 1:51:06122.2.1 整型整型 ( int ) 整型数的内部表示:二进制补码 位数既定的二进制补码运算没有加减的区别;对于溢出,只是简单的舍弃而不是报错 整型数的表示范围:取决于二进制位数 整型数的
8、操作:+,-,*,/,%,=,!,=,=,=,&,|,&=,|=,&,|,&=,|=,!=,=,+=,-=,*=,/=,%=,+,-,,,? :1:51:0613编译器的机器字长总是与整型的位长有关编译器的机器字长总是与整型的位长有关如:如: 32位编译器的整型数一定为位编译器的整型数一定为32位长位长整型字面值分八进制,十进制和十六进制不同表示整型字面值分八进制,十进制和十六进制不同表示如:如: 0123 / 8进制进制 0 x12af3 / 16进制进制 12345 / 10进制进制 超过表示范围的整型数其值不可预料或者出错超过表示范围的整型数其值不可预料或者出错如:如: int a =
9、12345678912345678912345; / 错错*14对基本类型,可以加修饰,如:对基本类型,可以加修饰,如: int 型型int 占占4 字节字节short int 占占 2 字节字节 long int 占占4 字节字节*15int : signed int unsigned int short int : signed short int unsigned short intlong int: signed long int unsigned long int最简形式:最简形式:intunsignedshortunsigned shortlongunsigned long 再加修
10、饰,如:再加修饰,如:1:51:06162.2.2 整型子类整型子类( Sub-int Types )字符型字符型 charchar:表示范围:表示范围: 有符号:有符号:-128-128127(-127(-27 27 -1)-1) 无符号:无符号:0 0255 (0255 (028 -1) -1) 输出形式与整型数不同输出形式与整型数不同: : int x = 65; int x = 65; char ch = 65; char ch = 65; coutx coutx“nn”; ; coutch coutch“nn”; ; 结果为:结果为: 6565 A A 1:51:0617 自定义整数
11、区间,甚至列举单个整数值自定义整数区间,甚至列举单个整数值 enum Week Mon, Tue, Wed, Thu, Fri, Sat, Sun ; 最大特点是可以给每个值指定一个在程序中直接使用最大特点是可以给每个值指定一个在程序中直接使用的标记的标记(枚举符枚举符),默认从,默认从0开始依次递增开始依次递增1。 编程中将其当作整数常量用如:编程中将其当作整数常量用如: int a = 6; if ( a = Sun) cout b; bool 和和 int之间可以相互转换之间可以相互转换: boolint (true 1 or false 0) intbool (nonzero true
12、 or 0 false ) 当某个变量用于表示当某个变量用于表示true or false 两种状态时优先使用两种状态时优先使用 bool 型,这样可提高程序的可读性,而且型,这样可提高程序的可读性,而且 bool 型变量必比型变量必比int 型型变量占用更少的内存。变量占用更少的内存。1:51:06192.2.3 浮点型浮点型 ( Floating-Point Types )浮点数的内部表示:浮点数的内部表示: 国际标准国际标准IEEE754IEEE754浮点表示法,它与编程所用的浮点浮点表示法,它与编程所用的浮点数字面量以及输出的十进制浮点数之间有一个转换关数字面量以及输出的十进制浮点数之
13、间有一个转换关系系浮点数的表示范围:浮点数的表示范围:3232位浮点数位浮点数10103838 ( (2 2127127,1,1位符号位符号8 8位指数位指数2323位尾数位尾数 ) ) 64 64位浮点数位浮点数1010308 308 ( (2 210231023,1,1位符号位符号1111位指数位指数5252位尾数位尾数 ) )浮点数的操作:浮点数的操作: 常规的加、减、乘、除等操作常规的加、减、乘、除等操作*20常量常量:在程序运行过程中,其值不能被改变的量。又称:在程序运行过程中,其值不能被改变的量。又称文字量文字量(literal),存储在代码区,存储在代码区,对它的访问不是通过地址
14、进行的。,对它的访问不是通过地址进行的。2.3 常量和变量常量和变量2.3.1 常量常量*21 十进制整数十进制整数 123, -456 八进制整数八进制整数 0123, -011 十六进制整数十六进制整数 0 x123, -0 xAB 长整型与无符号型常数长整型与无符号型常数 12L, 0234L,-0 xABL 12U, 0234U,0 xABU1. 整型常量整型常量*22 (均为十进制,无数制区分)(均为十进制,无数制区分) 小数形式小数形式 : 必须有小数点必须有小数点 1.65 1. .123 指数形式指数形式 (也称为科学表示法)(也称为科学表示法): 如如 123000.0 可写
15、为可写为 1.23e5 0.00368 可写为可写为 3.68E-3 e 或或 E前必须有数字,前必须有数字,1000写为写为 1e3 不能写为不能写为 e32. 实型常量(在内存中以浮点形式存放)实型常量(在内存中以浮点形式存放)*23在内存中在内存中存放对应的存放对应的ASCII码值,如码值,如 a 的的ASCII码为码为 97,则在,则在内存中用一个字节存放:内存中用一个字节存放:在源程序中在源程序中最基本的表示形式为:最基本的表示形式为:单引号括起来的一个字符,如:单引号括起来的一个字符,如: a A ? 0 1 1 0 0 0 0 1对于不可打印的字符,可以用转义字符形式表示对于不可
16、打印的字符,可以用转义字符形式表示 。3. 字符型常量字符型常量ASCII 码使用指定的码使用指定的7 位或位或8 位位二进制数二进制数组合来表示组合来表示128 或或256 种可能的种可能的字符字符。标准。标准ASCII 码也叫基础码也叫基础ASCII码,使用码,使用7 位位二进制数二进制数来表示所有的大写和小写字母,数字来表示所有的大写和小写字母,数字0 到到9、标点符、标点符号,号, 以及在美式英语中使用的特殊以及在美式英语中使用的特殊控制字符控制字符*24注意:注意:n 与与 n 的区别的区别 ! 以反斜杠以反斜杠“”引导的特殊形式的非显示字符或表示特定意义引导的特殊形式的非显示字符或
17、表示特定意义的字符常量的字符常量n t b ddd xhh 见表见表 2-3注意:注意:字母字母 A 的的 ASCII 码是码是(65)10=(101)8=(41)16在程序中表示字母在程序中表示字母A,可以有三种方法:,可以有三种方法: A 101 x41n 表示表示一个一个控制字符:换行符,控制字符:换行符, n 表示一个字母。表示一个字母。转义字符转义字符*25Escape SequenceRepresentsaBell (alert)bBackspace(退格键)nNew line (012 or x0A) rCarriage return (回车符,将当前位置移到行首)tHorizo
18、ntal tab(水平制表符,tab键)vVertical tab(垂直制表符)Single quotation markDouble quotation marksBackslash?Literal question mark0Null(空字符)oooASCII character in octal notationxhhhASCII character in hexadecimal notation常常用用的的转转义义字字符符*26(在内存中存放字符序列的(在内存中存放字符序列的ASCII码值,码值, 最后加一个结尾标志)最后加一个结尾标志)如如: How do you do. CHINA
19、 a字符串结束标志符是:字符串结束标志符是: 0注意:注意: a 和和 a 是不同的。是不同的。CHINA0.4. 字符串常量字符串常量-用双引号括起来的用双引号括起来的字符序列字符序列*27符号常量符号常量:用标识符代表一个常量,:用标识符代表一个常量, 必须先定义后必须先定义后使用,又称使用,又称常变量常变量。例:定义标识符常量例:定义标识符常量#define PRICE 30#define PI 3.1425926#define S Chinaconst f loat PI=3.14;2.3.2 符号常量符号常量*28例例2.1 符号常量的使用符号常量的使用 好处:好处:(1)提高程序的
20、可读性。)提高程序的可读性。(2)程序中使用多处,一改全改。)程序中使用多处,一改全改。*29变量变量:其值可以改变的量。其值可以改变的量。变量名变量名:一个变量的符号名一个变量的符号名,由由标识符标识符构成。构成。 一个变量占据内存一定的一个变量占据内存一定的存储单元存储单元, 在存储单元中存放该在存储单元中存放该变量的值变量的值。int a, b ; unsigned u ; float f ; double d ; char c1, c2, c3 ; 1. 定义变量定义变量2.3.3 变量变量*30(1) 区别大小写区别大小写: 如如 sum 与与 Sum 为不同的变量名。为不同的变量名
21、。(2)先定义后使用先定义后使用: 分配单元分配单元 、确定类型、语法检查、确定类型、语法检查(3)在一个程序单元中不能重复定义。在一个程序单元中不能重复定义。(4)关键字(保留字)不能作为标识符。关键字(保留字)不能作为标识符。(5)最大长度随不同的最大长度随不同的 C+语言系统而定语言系统而定: VC+识别前识别前 247 个字符,超过无效。个字符,超过无效。(6)按义取名。按义取名。 见名之意见名之意 变量及其他标识符命名注意事项变量及其他标识符命名注意事项*31给变量赋初值的方法有两种:给变量赋初值的方法有两种:(1)变量定义后,用赋值语句赋初值。)变量定义后,用赋值语句赋初值。例如:
22、例如: int a, b ; a = 12; b = 24 ; char c1 ; c1=A; (2)在定义变量的同时,)在定义变量的同时, 直接赋初值(称为变量的初始化)直接赋初值(称为变量的初始化)。 例如例如: int a=12, b= -24 ; char c1=A, c2=B ; 2变量赋初值变量赋初值*32完成对常量、变量作运算的符号称为运算符或操作符完成对常量、变量作运算的符号称为运算符或操作符(operator)。把参与运算的对象称为操作数把参与运算的对象称为操作数(operand),可以是常量和变可以是常量和变量等。量等。单目(一元一元,unary operator)操作符:
23、在一个操作数上施加的操作,如:-3双目(二元二元,binary operator)操作符:在二个操作数上施加的操作,如:-,x+y三目三目(三元三元, ternary operator)运算符运算符:在三个操作数上施加的操作,只有1个“?:”,条件运算符2.4 基本运算符和表达式基本运算符和表达式2.4.1 C+运算符及表达式简介运算符及表达式简介优先级与结合性优先级与结合性 表达式表达式:若干个操作数和操作符按语法规则构成的操:若干个操作数和操作符按语法规则构成的操作,如:作,如: a = -3-5+6a = -3-5+6* *7/-87/-8 优先级优先级:表达式中多个操作符的执行顺序的规
24、定,如:表达式中多个操作符的执行顺序的规定,如: * *x+;x+; / / 先做先做x+x+结合性结合性:同级操作符的执行顺序的规定性,就是同级操作符的执行顺序的规定性,就是在两在两种运算优先级相同时,种运算优先级相同时,“自左向右自左向右”还是还是“自右向左自右向左”运算运算如:如: a=b=6; / a=b=6; / 先做先做b=6b=6 a=x+y+z;*34基本算术运算符基本算术运算符: + - * / % / 整数运算时为整除,结果为整数。整数运算时为整除,结果为整数。 % (模运算或称模运算或称求余求余运算运算) 必须为整型数据。必须为整型数据。 例例: 7/3 结果?结果? 7
25、.0/3 结果?结果? 7%3 结果?结果?22.33333312.4.2 算术运算符和算术表达式算术运算符和算术表达式*35由运算符和操作数构成由运算符和操作数构成表达式表达式:如:如:a + b; a * ( c + d ); a * c + d;优先级优先级:+ - 较低较低* / % 较高较高结合性结合性:自左向右自左向右例:表达式:例:表达式:6/3-2 “自左向右自左向右” 或或 “自右向左自右向左” 运算结果不同运算结果不同*36“关系运算关系运算”实际上就是实际上就是“比较运算比较运算”关系运算符及其优先次序关系运算符及其优先次序=!=小于小于小于等于小于等于大于大于大于等于大
26、于等于恒等于恒等于不等于不等于优先级相优先级相同同(较高较高)优先级相优先级相同同(较低较低)2.4.3 关系运算符和关系表达式关系运算符和关系表达式*37关系运算符及其关系运算符及其优先级优先级说明说明a=bc 等效于等效于 a=(ba+b 等效于等效于 c(a+b) 算术算术关系关系( , 和和 = )关系(关系( = 和和 != ) 高高 低低*381. 用关系运算符连接两个表达式用关系运算符连接两个表达式如:如:ab, a+bb+c, ab 的值为的值为 ?则表达式则表达式 bb)&(xy)ab&xy(a=b) | (x=y)a=b | x=y(!a)b!a b逻辑表达式:用逻辑运算符
27、将表达式逻辑表达式:用逻辑运算符将表达式连结起来连结起来*42(2)C+ 编译系统在给出编译系统在给出逻辑运算结果逻辑运算结果时,时, 以数值以数值 1 代表代表 “真真” 以数值以数值 0 代表代表 “假假”(1)运算时,在)运算时,在判断一个量判断一个量是否为是否为“真真”时,时, 以非以非0 代表代表 “真真” 以以0 代表代表 “假假”例如:已知例如:已知 a=4则则 !a 的值是的值是 0 已知已知 a=0, b=5 则则 a&b 的值是的值是 0则则 a|b 的值是的值是 1则则 !a&b 的值是的值是 1注意:注意:*43注意:注意:在在C+程序中,程序中,欲表示数学关系欲表示数
28、学关系 0 x10 ,C+的逻辑表达式必须写成的逻辑表达式必须写成 0=x & x=10,而不能写成而不能写成 0= x =10。为什么?为什么?*44位运算是对整型数据的运算位运算是对整型数据的运算(可以操作到位可以操作到位),符号位参与运算,符号位参与运算,主要用于系统程序设计。主要用于系统程序设计。位运算符共有位运算符共有6 种种:它们是:按位它们是:按位与与(&) 按位按位或或(|) 按位按位异或异或() 按位按位取反取反() 左移左移() 2.4.5 位运算符和位运算表达式位运算符和位运算表达式 *45举例:按位举例:按位“与与”例如:已知:例如:已知:char a=3, b=2 ,
29、 c ; 求:求: c = a & b ; 此时,可将此时,可将a、b、c看成是看成是一个字节长度的整型数。一个字节长度的整型数。 a 0000 0011 & b 1111 1110 c 0000 0010结果变量结果变量 c 的值为的值为 2。*46 用途:用途:将某一位置将某一位置0,其它位不变,其它位不变。例如:。例如:将将 char 型变量型变量 a 的最低位置的最低位置 0: a = a & 0376;取指定位。取指定位。例如:有例如:有 char c; int a; 取出取出 a 的低字节,置于的低字节,置于 c 中:中:c = a & 0377;编写通信或控制程序时,判断计算机端
30、口状态。编写通信或控制程序时,判断计算机端口状态。 其它位运算,自学。其它位运算,自学。*47使变量的值加使变量的值加 1 或减或减 1 的运算的运算如如: +i, - -ii先加或减先加或减 1再使用再使用 ii+, i- -先使用先使用 i 然后然后 i再加或减再加或减 1int i=3, j;j=+i;运算后运算后 i = ?,j = ?int i=3, j;j=i+;运算后运算后 i = ?,j = ?注意注意:只能用于变量,不能用于常量和表达式,只能用于变量,不能用于常量和表达式, 如:如: 3+; (a+b)+; 错误错误i = 4,j = 4i = 4,j = 3 2.4.6 自
31、增、自减运算符和表达式自增、自减运算符和表达式*48自增自减运算符实例自增自减运算符实例*491赋值运算符赋值运算符 “=” 是赋值运算符,是赋值运算符,赋值表达式格式:赋值表达式格式: 求解过程:求解过程:求出求出 的值,赋给的值,赋给 赋值表达式的值:赋值表达式的值:为为 的值的值如:如:a = b + c 还可以是另一个赋值表达式,还可以是另一个赋值表达式,2.4.7 赋值运算符和赋值表达式赋值运算符和赋值表达式*50如如: a=b=5 a=5+(c=6) a=(b=4)+(c=6)如果如果 a 初值为初值为 2,表达式结果?,表达式结果?结果为结果为 7如如: a=33是最简单的表达式
32、是最简单的表达式i=i+1它不同于它不同于“等于号等于号”注意优先级注意优先级 与结合性与结合性 b = c = d = a+5自右向左自右向左表达式结果分别为:?表达式结果分别为:? 5 11 10*51复合赋值运算符复合赋值运算符x*=y+8等价于等价于 x=x*(y+8)x%=3等价于等价于 x=x%3x/=9简写为:简写为: a += 3 a=a+3简写为:简写为: a - = b a=a-b同理:同理:赋值运算符赋值运算符 以及以及 复合赋值运算符复合赋值运算符的运算优先级比的运算优先级比算术运算符算术运算符优先级低,优先级低,运算结合性为运算结合性为自右向左。自右向左。等价于等价于
33、 x=x/92. 复合赋值运算符复合赋值运算符*52例例: a+=a-=a*a如果如果 a 初值为初值为 2,表达式结果?,表达式结果? a+=a-=a*a结果结果 a 的值为的值为 - 4表达式的结果也为表达式的结果也为 - 4*53逗号运算符逗号运算符:, 逗号表达式逗号表达式: ,. ,如如: a=3*5 , a*4 , a+5逗号运算符逗号运算符优先级最低优先级最低,结合性:自左向右结合性:自左向右求解过程:求解过程:依次计算依次计算 、 . 的值。的值。逗号表达式的值:逗号表达式的值:为为 的值的值运算结束后:运算结束后:a 的值为的值为 15 整个表达式的值为整个表达式的值为 20
34、2.4.8 逗号运算符和逗号表达式逗号运算符和逗号表达式*54a=3*5, a*4x=(a=3, 6*3)赋值表达式赋值表达式x=a=3, 6*3逗号表达式逗号表达式例:例:如下表达式,如下表达式, 运算结束后运算结束后 a=? x=? 表达式表达式=?a=15, 表达式表达式=60a=3, x=18, 表达式表达式=18a=3, x=3, 表达式表达式=18逗号表达式逗号表达式*55例例 int i ; double x; sizeof(int) sizeof(i) sizeof(double) sizeof(x)格式:格式: sizeof (类型标识类型标识/变量名变量名) 功能:功能:
35、求某类型变量所占字节数求某类型变量所占字节数结果均为结果均为 4结果均为结果均为 82.4.9 sizeof( ) 运算符和表达式运算符和表达式 *56例:例: 求求 & 从左向右扫描,计算从左向右扫描,计算,当当 为为真真时,继续计算时,继续计算 当当 为为假假时,即能确定整个表达式的值为假,时,即能确定整个表达式的值为假,则停止计算则停止计算2.4.10 逻辑表达式运算优化时的副作用逻辑表达式运算优化时的副作用*57例:例:求求 | | 从左向右扫描,计算从左向右扫描,计算,当当 为为假假时,继续计算时,继续计算 当当 为为真真时,即能确定整个表达式的值为真,时,即能确定整个表达式的值为真
36、,则停止计算则停止计算*58课堂练习课堂练习int x , y , z , w ; 输出结果?输出结果?x = y = z = 1 ;w = +x | +y & +z ;cout x t y t z n ;cout w n ;输出:输出: 2 1 1 1建议自己的程序中不要出现这种语句建议自己的程序中不要出现这种语句,可读性不好,表达式不要过于复,可读性不好,表达式不要过于复杂,可以用多条语句分开写。杂,可以用多条语句分开写。*59 如果赋值运算符两侧的类型不一致,则遵循以下如果赋值运算符两侧的类型不一致,则遵循以下几条原则进行类型转换后赋值。几条原则进行类型转换后赋值。1. 整型变量整型变量
37、实型数据实型数据, 舍弃小数舍弃小数(无四舍五入无四舍五入)。int i=3.96 ; i 为为 32. 实型变量实型变量整型数据整型数据, 数值不变数值不变, 有效数位增加。有效数位增加。float f=23 ; f 为为 23.0 double d=23 ; d 为为 23.02.5 类型转换类型转换2.5.1 赋值时的自动类型转换赋值时的自动类型转换*60整型数据类型有:整型数据类型有:signed char unsigned charsigned short unsigned shortsigned int unsigned intsigned long unsigned long各种
38、类型的整型数占用的字节数是不同的,其二进制位各种类型的整型数占用的字节数是不同的,其二进制位数有长有短。它们之间相互赋值,其实就是它们内存数数有长有短。它们之间相互赋值,其实就是它们内存数据之间的赋值,分两种情况。据之间的赋值,分两种情况。下面以下面以 int 型数据与型数据与 char 型数据之间的赋值型数据之间的赋值进行说明:进行说明:3整型数据之间相互赋值整型数据之间相互赋值 *61 将将 int 型变量赋给字符型变量时型变量赋给字符型变量时 (长长短短) 方法:方法:截取低位赋值截取低位赋值例:例:signed char c1=250 ; c1真值为真值为 -6 250 为为int型常
39、数型常数, 32 位:位:00000000 1111 1010 c1: 1111 1010 *62将字符型变量赋给将字符型变量赋给 int 型变量时型变量时(短短长长),又分成两种情况:又分成两种情况: 有符号的字符型数据有符号的字符型数据整型变量整型变量 需符号位扩展需符号位扩展 例:例:char c1=15 ; int i ; i=c1 ; i 为整型变量为整型变量 32 位:位: 00000000 0000 1111 c1(正号正号): 0000 1111扩展正号,结果扩展正号,结果i 的真值为的真值为 15 15 为整型常数为整型常数 32 位:位: 00000000 0000 111
40、1 *63 char c1=250 ; int i ; i=c1 ; i 为整型变量为整型变量 32 位:位: 11111111 1111 1010 250 为整型常数为整型常数 32 位:位: 00000000 1111 1010 c1(负号负号): 1111 1010 扩展负号,结果扩展负号,结果 i 的真值为的真值为 - 6*64无符号的字符型数据无符号的字符型数据整型变量整型变量 前面补前面补 0 unsigned char c1=250 ; int i ; i=c1 ; i 为整型变量为整型变量 32 位:位: 00000000 1111 1010 前面补前面补0,结果,结果 i 的真值为的真值为 250250 为整型常数为整型常数 32 位:位: 00000000 1111 1010 c1(无符号数无符号数): 1111 10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 梁平别墅铝扣板施工方案(3篇)
- 和老人谈话活动方案策划(3篇)
- 冰蓄冷施工方案(3篇)
- 走廊通风排烟施工方案(3篇)
- 医学培训考试题库及答案
- 北京市昌平区2024-2025学年八年级下学期第一次月考语文考点及答案
- 安徽省六安市金寨县2023-2024学年高三上学期第一次月考数学试题及答案
- 心理学选择题目及答案
- 心动信号测试题目及答案
- 小组成员题目大全及答案
- 2025+CSCO结直肠癌诊疗指南解读
- 食堂从业人员培训内容
- 针灸学练习题库含答案
- 健身数据分析与管理平台企业制定与实施新质生产力战略研究报告
- 悟空识字1-300(带拼音)-可打印
- 小学与初中科学课程衔接策略
- (完整版)西门子ARCADICOrbic3D三维C型臂培训
- 检验科免疫室工作制度
- 《智能感知技术》课件
- 2024版酷家乐课件
- 税务停业申请书
评论
0/150
提交评论