首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
|
![]() |
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
|
![]() |
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
|
![]() |
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
|
![]() |
卫生资格 | 执业医师 | 执业药师 | 执业护士 | |
![]() |
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
|
![]() |
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
|
![]() |
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
3.符号常量声明语句符号常量在使用之前必须先进行声明。符号常量声明语句同变量声明语句类似,其语法格式为:const<类型名><符号常量名><初值表达式>……;
其中,关键字const指明这是一条符号常量声明语句,后面跟着符号常量的类型名,接着是符号常量名,它是一个用户定义的标识符,符号常量名之后为一个赋值号和一个初值表达式。由此可见,必须在声明符号常量的同时为其赋初值。该语句也可以声明多个符号常量。系统执行符号常量声明语句时,需要依次为每个符号常量分配存储单元并赋初值。一个符号常量被声明后,它的值就是声明所赋予的初值,作为常量,这个值以后将始终保持不变,因为系统只允许读取它的值,而不允许再次向它赋值。另外,在符号常量声明语句中,若<类型名>为int,则int可省略。符号常量声明语句既可以出现在函数体外,也可以出现在函数体内,这一点也跟变量定义语句相同。C+ +关键字中的true和false就是系统预先定义的两个符号常量,它们的值分别为1和0。使用符号常量往往可以提高程序的可读性和可维护性。由于符号常量和变量同样要求系统为其分配内存单元,所以可以把符号变量视为一种不允许赋值改变的或只读不写的变量,称其为const变量。4使用#define命令定义符号常量# define命令是一条预处理命令,也可以用它来定义符号常量。其命令格式为:#define<符号常量名><字符序列><符号常量名>是用户定义的标识符,又称为宏或宏标识符;<字符序列>也是由用户给定的用来代替宏的一串字符序列,也称为宏替换体,它可以是数值常量、可计算值的表达式或字符串。宏被该命令定义后就可以使用在其后的程序中。当程序被编译时将把所有地方使用的宏标识符替换为对应的字符序列,并把宏命令删除掉。 【考点四】
运算符和表达式
1.运算符和表达式的概念C+ +语言中的运算符又称为操作符,是用来对数据进行运算的符号。C+ +语言中的运算符可以根据其运算分量个数的多少分为单目(或一元)运算符、双目(或二元)运算符和三目(或三元)运算符3类。运算符可能是一个字符,也可能由两个或三个字符组成,还有一些运算符是C+ +关键字。
2.运算类型与运算符C+ +包含多种不同种类的运算。每一种运算与其他运算的区别在于以下3个方面:(1)参加运算的运算分量的数量和类型;(2)运算结果的数据类型;(3)运算的具体操作。
3.赋值运算赋值运算是一种双目运算,其形式为:<变量名>=<表达式>右运算分量为一个表达式。"="为赋值运算符(与数学中的等号含义不同)。左运算分量为与右运算分量类型相同的变量。赋值运算的具体操作为:先计算右端表达式的值,然后把该值赋给左端变量。
4.算术运算符和算术表达式算术运算是指int型、float型、double(也包括char型)的数值类数据计算后,得到同一类型数据的运算。算术运算中所使用的运算符称为算术运算符。单目算术运算符包括:-(单减)、+ +(增量)和- -(减量)。单减运算的格式为:-<运算分量>单减运算相当于对运算分量取相反数,例如:-a,-(x+y)。增量运算有两种形式。前缀增量:+ +<运算分量>后缀增量:<运算分量>+ +双目算术运算符包括:+(加)、-(减)、*(乘)、/(除)和%(取余)。它们的含义与数学上相同。该类运算的运算分量为任一种数值类型,即任一种整数类型和任一种实数类型。由算术运算符(包括单目和双目)连接运算分量而组成的式子称为算术表达式。每个算术表达式的值为一个数值,其类型按照以下规则确定:(1)当参加运算的两个运算分量均为整型时(但具体类型可以不同,如一个为int型,另一个为char型),则运算结果为int型。(2)当参加运算的两个运算分量中至少有一个是单精度型,并且另一个不是双精度型时,则运算结果为float型。(3)当参加运算的两个运算分量中至少有一个是双精度型时,则运算结果为双精度型。
5.关系运算符和关系表达式C+ +语言提供了6种关系运算符,它们是:<(小于)、< =(小于等于)、>(大于)、> =(大于等于)、= =(等于)、! =(不等于)这6种运算符都是双目运算符,用来比较两个运算分量的大小,运算结果为逻辑型值true或false(它们分别对应着整数1和0。由一个关系运算符连接前后两个数值表达式而构成的式子称为关系表达式,简称关系式。当一个关系式成立时,则计算结果为逻辑值是(true),否则为逻辑值假(false)关系运算符的使用格式为:<运算分量><关系运算符><运算分量>
6.逻辑运算符和逻辑表达式C+ +语言提供了3种逻辑运算符,它们是:!(逻辑非)、&&(逻辑与)、(逻辑或)
其中,!为单目运算符,&&和为双目运算符。逻辑运算符的使用格式为:<逻辑运算符!><运算分量><运算分量><逻辑运算符&&或><运算分量>逻辑运算的具体操作步骤为:(1)计算两边运算分量的值;(2)若运算分量的值不是逻辑型,则自动转换为逻辑型,即以0值为假(即false),非0值为真(即true);(3)按不同逻辑运算符计算返回值。
7.位运算C+ +提供6种位运算符。(1)"&"是按位与运算符,它将两个运算分量的对应二进制位进行与操作。基中,0 和0与得0,0和1与得0,1和0与得0,1和1与得1。(2)"|"是按位或运算符,它将两个运算分量的对应二进制位进行或操作。其中,0和0或得0,0和1或得1,1和0或得1,1和1或得1。(3)"^"是按位异或运算符,它将两个运算分量的对应二进制位进行异或操作。其中,0和0异或得0,0和1异或得1,1和0异或得1,1和1异或得0。(4)">>"是按位右移运算符,由于右移的位数为右边运算分量的值,所以右边运算分量的值必须是一个整数。(5)"<<"是按位左移运算符,由于左移的位数为右边运算分量的值,所以右边运算分量的值必须是一个整数。(6)"~"是按位取反运算符,它将运算分量的对应二进制数的每一位进行取反操作。其中,0取反得1,1取反得0。位运算符的使用格式:<运算分量><双目运算符><运算分量><单目运算符><运算分量>
8.其他运算(1)条件运算符条件运算是C+ +中唯一的三目运算,与其对应的运算符?:称为条件运算符。条件运算符的使用格式为:<表达式1>?<表达式2>:<表达式3>当计算有条件运算符构成的表达式时,首先计算<表达式1>,若其值非0,则计算出<表达式2>的值,并用这个值作为整个表达式的值;若<表达式1>的值为0,则计算出<表达式3>的值,并用这个值作为整个表达式的值。(2)逗号运算符C+ +中使用逗号运算符指明对多个表达式进行顺序求值。逗号运算符的使用格式为:<表达式1>,<表达式2>,……<表达式n>其中,每个逗号都称为逗号运算符,整个式子称为逗号表达式。上述逗号表达式的求值步骤为:从左向右依次计算<表达式1>、<表达式2>…<表达式n>的值;将<表达式n>(即最右端的表达式)的值作为整个逗号表达式的值。(3)sizeof运算符使用运算符sizeof可以进行字长提取操作,因此sizeof运算符又称为字长提取符,它的使用格式为:sizeof(<运算分量>)
其中,sizeof为关键字;<运算分量>既可以是一个类型名,也可以是一个表达式,当作为<运算分量>的表达式只包含一个变量名时,圆括号()可以省略。字长提取运算的结果为一个整数,该整数表示指定的类型或变量的字节长度,即在内存中占用的字节(Byte)数。(4)圆括号运算符C+ +中不仅将圆括号()归为运算符,而且根据不同的使用方式,可以对圆括号运算符的功能作出以下3种不同的解释:①圆括号用于函数调用。其格式为:<函数名>(<实参表>)②圆括号用于强制类型转换。其格式为:(<类型名>)<表达式>③圆括号用于类型构造。其格式为:<类型名>(<表达式>)类型构造是指使用圆括号中<表达式>的值来构造一个具有目标数据类型的值,要构造的目标数据类型由<类型名>指定。④数组下标运算符:[](下标)。⑤指针运算符:*(取地址)和&(值引用)。⑥动态存储分配运算符:new(分配)和delete(释放)。⑦作用域限定运算符:::(类域或全局域)
9.优先级和结合性根据运算符的优先级和结合性,可以将表达式的计算顺序规则总结为以下3条:(1)优先计算带有括号的子表达式;(2)在没有括号的部分,依照运算符优先级,由高到低进行计算;(3)具有相同优先级的运算符,按照结合性规定,依次进行计算。C+ +运算符分成17个优先级,优先级数字越小,表示运算符优先级越高。具有同一优先级数字的运算符,优先级相同。单目运算符、赋值运算符和复合赋值运算符是右结合的,其余所有运算符都是左结合的。
希望与更多计算机等级考试的网友交流,请进入计算机等级考试论坛
更多信息请访问:考试吧计算机等级考试栏目
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |