c语言中,标志位可不可以取反

[复制链接]
7526|5
 楼主| 陈剑2008 发表于 2008-12-7 19:28 | 显示全部楼层 |阅读模式
c语言中,标志位可不可以取反,我在声明的是一个全局的变量,声明如下。
   声明:    unshigned char pf1,
可不可以这样取反:pf1=~pf1。我用的是51单片机!
谢谢!
zq1987731 发表于 2008-12-7 19:53 | 显示全部楼层

没明白什么意思..

unshigned char pf1 = 00000000(B)
执行pf1=~pf1;
pf1 = 11111111(B)
【按位取反】当然可以了...

既然是标志位,怎么不用【位变量】定义呢...
bit pf1 = 0(B)
执行pf1=~pf1;
pf1 = 1(B)
 楼主| 陈剑2008 发表于 2008-12-7 20:01 | 显示全部楼层

好的,谢谢!我是新手!

saul2006 发表于 2008-12-7 22:03 | 显示全部楼层

新手学习中,

HWM 发表于 2008-12-8 08:50 | 显示全部楼层

按位取反和逻辑取反是不同的。

若用变量表示一个布尔量(无论是位或字节),取逻辑反应使用“!”。
 楼主| 陈剑2008 发表于 2008-12-8 08:57 | 显示全部楼层

收到!谢谢!

您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

27

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部