C语言printf中的~value是什么意思?

#include<stdio.h>voidmain() {  intvalue=0xFF;  printf(... #include <stdio.h>void main () {   int value = 0xFF;   printf("The inverse of %X is %X\n", value, ~value); } 在printf("The inverse of %X is %X\n", value, ~value);代码中~value是什么意思? 展开
 我来答
冉易云ST
2011-12-08 · TA获得超过535个赞
知道小有建树答主
回答量:397
采纳率:0%
帮助的人:525万
展开全部
~value 相当于对value的值取反
C语言的设计具备了汇编语言的运算能力,它支持全部的位操作符。位操作符是对字节或字中的位进行测试、置位或移位处理,在对微处理器的编程中,特别适合对寄存器、I/O端口进行操作。
6种伟操作符:

(1) & :按位“与”——仅当两个操作数为1时,结果为1,否则为0。如:1000 1000 & 1000 0001 = 1000 0000;

(2) | :按位“或”——仅当两个操作数为0时,结果为0,否则为1。如:1000 1000 | 1000 0001 = 1000 1001;

(3) ^:按位“异或”——仅当两个操作数不同时,相应的输出结果才为1,否则为0。

如:1000 1000 ^ 1000 0001 = 0000 1001 ;

(4) ~ :“取反”——把1置为0,0置为1。如:~1000 1000 = 0111 0111;

(5) <<: “左移”——将变量的各位按要求向左移动若干位。如:0000 1000 <<3 = 0100 0000;

(6) >>: “右移”——将变量的各位按要求向右移动若干位。如:0000 1000>>3=0000 0001;
千里冰封223
2011-12-08 · TA获得超过272个赞
知道答主
回答量:139
采纳率:0%
帮助的人:63.6万
展开全部
~是按位取反的意思,也就是 value的二进制表示的数值,按位取反,1取反就是0,0取反就是1,例如1011010取反后就是0100101,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风若远去何人留
推荐于2018-05-06 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450134
专业C/C++软件开发

向TA提问 私信TA
展开全部
取决于~value出现的位置。

printf的格式为
printf("format_string", var1, var2 ....);
可以分为格式字符串,和变量区两个部分。

1 出现在变量区。
这时value是一个变量,类型为整型,可能为char,short, int, long或同类的无符号型。

~作为操作符出现,含义为按位取反。
于是这时含义为输出value按位取反的结果。

2 出现在格式字符串区。
如果包含在格式字符串区,那么就是一个简单的文字了,没有其它含义。
会原样输出
~value
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
张玉生zys
2011-12-08 · TA获得超过759个赞
知道小有建树答主
回答量:321
采纳率:0%
帮助的人:89.3万
展开全部
value只是你定义的一个整形(int型)变量而已,
你把它换成其它任意一个字符(C语言中的关键字、保留字除外)都是可以的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友66ee332
2011-12-08 · TA获得超过562个赞
知道小有建树答主
回答量:406
采纳率:0%
帮助的人:497万
展开全部
-value-1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式