手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>C/C++>列表

C语言运算符

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
C语言的内部运算符很丰富,运算符是告诉编译程式执行特定算术或逻辑操作的符号。C语言有三大运算符:算术、关系和逻辑、位操作。另外,C更有一些特别的运算符,用于完成一些特别的任务。
2.6.1算术运算符
表2-5列出了C语言中允许的算术运算符。在C语言中,运算符“ ”、“-”、“*”和“/”的用法和大多数电脑语言的相同,几乎可用于任何C语言内定义的数据类型。当“/”被用于整数或字符时,结果取整。例如,在整数除法中,10/3=3。
一元减法的实际效果等于用-1乘单个操作数,即任何数值前放置减号将改变其符号。模运算符“%”在C语言中也同他在其他语言中的用法相同。切记,模运算取整数除法的余数,所以“%”不能用于float和double类型。


最后一行打印一个0和一个1,因为1/2整除时为0,余数为1,故1%2取余数1。
2.6.2自增和自减
C语言中有两个很有用的运算符,通常在其他电脑语言中是很难找到他们的—自增和自减运算符, 和--。运算符“ ”是操作数加1,而“--”是操作数减1,换句话说:x=x 1;同 x;x=x-1;同--x;
自增和自减运算符可用在操作数之前,也可放在其后,例如:x=x 1;可写成 x;或x ;但在表达式中这两种用法是有区别的。自增或自减运算符在操作数之前,C语言在引用操作数之前就先执行加1或减1操作;运算符在操作数之后,C语言就先引用操作数的值,而后再进行加1或减1操作。请看下例:
x=10;
;y= x;
此时,y=11。假如程式改为:
x=10;y=x ;
则y=10。在这两种情况下,x都被置为11,但区别在于配置的时刻,这种对自增和自减发生时刻的控制是很有用的。在大多数C编译程式中,为自增和自减操作生成的程式代码比等价的赋值语句生成的代码
要快得多,所以尽可能采用加1或减1运算符是一种好的选择。
。下面是算术运算符的优先级:
:最高 、-
--
-(一元减)
*、/、%最低 、-编译程式对同级运算符按从左到右的顺序进行计算。当然,括号可改变计算顺序。C语言
处理括号的方法和几乎任何的电脑语言相同:强迫某个运算或某组运算的优先级升高。
2.6.3关系和逻辑运算符
关系运算符中的“关系”二字指的是个值和另一个值之间的关系,逻辑运算符中的“逻辑”二字指的是连接关系的方式。因为关系和逻辑运算符常在一起使用,所以将他们放在一起讨论。关系和逻辑运算符概念中的关键是True(真)和Flase(假)。C语言中,非0为True,0为Flase。使用关系或逻辑运算符的表达式对Flase和Ture分别返回值0或1(见表2-6)。

表2-6给出于关系和逻辑运算符,下面用1和0给出逻辑真值表。关系和逻辑运算符的优先级比算术运算符低,即像表达式10>1 12的计算能够假定是对表达式10>(1 12)的计算,当然,该表达式的结果为Flase。在一个表达式中允许运算的组合。例如:
10>5&&!(10<9)||3<=4
这一表达式的结果为True。
。下表给出了关系和逻辑运算符的相对优先级:
:最高!

>= <=
=== !=
=&&
最低||同算术表达式相同,在关系或逻辑表达式中也使用括号来修改原计算顺序。切记,任何关系和逻辑表达式产生的结果不是0就是1,所以下面的程式段不但正确而且
将在屏幕上打印数值1。
int x;
;x=100;
;printf("%d",x>10);
2.6.4位操作符
和其他语言不同,C语言支持全部的位操作符(BitwiseOperators)。因为C语言的设计目的是取代汇编语言,所以他必须支持汇编语言所具备的运算能力。位操作是对字节或字中的位(bit)进行测试、置位或移位处理,这里字节或字是针对C标准中的char和int数据类型而言的。位操作不能用于float、double、longdouble、void或其他复杂类型。表2-7给出了位操作的操作符。位操作中的AND、OR和NOT(1的补码)的真值表和逻辑运算等价,唯一不同的是位操作是逐位进行运算的。

如表2-8所示,当且仅当一个操作数为True时,异或的输出为True,否则为Flase。
位操作通常用于设备驱动程式,例如调制解调器程式、磁盘文档管理程式和打印机驱动程式。这是因为位操作可屏蔽掉某些位,如奇偶校验位(奇偶校验位用于确保字节中的其他位不会发生错误通常奇偶校验位是字节的最高位)。



[1] [2] 下一页

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS