一个简单的问题

luosha80 2002-12-28 11:39:30
#include <stdio.h>

void main ()
{
printf("0 & 0 is %d\n", 0 & 0);
printf("0 & 1 is %d\n", 0 & 1);
printf("1 & 1 is %d\n", 1 & 1);
printf("1 & 2 is %d\n", 1 & 2);
printf("15 & 127 is %d\n", 15 & 127);
}
大家看看这段简单的程序,在VC里编译出来的结果我却看不明白了。结果如下,大家帮忙看看啊。
0 & 0 is 0
0 & 1 is 0
1 & 1 is 1
1 & 2 is 0 ???
15 & 127 15 ???
就是最后两条看不明白啊,是不是VC编译产生的错误啊!!!

...全文
64 10 打赏 收藏 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿发伯 2002-12-29
  • 打赏
  • 举报
回复
这是算术与操作的正确结果,0&0=0;0&1=0,1&0=0;1&1=1:
1 & 2 is 0

01
&10
-----
00

15 & 127 15

00001111 //15
&11111111 //127
----------
00001111 //15
sea_lover 2002-12-29
  • 打赏
  • 举报
回复
&是位与。你先求出127的2进制的值,再求出15的二进制的值,两个二进制的值按位取反,就是你最后的结果!
1111 1111 ---------127
& 0000 1111 ---------15
_____________
0000 1111 ---------15
luosha80 2002-12-29
  • 打赏
  • 举报
回复
谢谢各位呵
boyfling 2002-12-29
  • 打赏
  • 举报
回复
1 = 0000 0001 (二进制)
& 2 = 0000 0010
-------------------------
0000 0000

15 和 127同上
efanl 2002-12-29
  • 打赏
  • 举报
回复
呵呵,要弄清楚逻辑与和按位与的区别,
你的程序如果换成用&&代替&,就是你想要的结果了,按位与&是要在二进制中进行与操作的,而不是你想象的从数值上的0与非0来进行与操作。
yatuor 2002-12-28
  • 打赏
  • 举报
回复

00001111 = 15
& 11111111 = 127
-----------
00001111 = 15
&是按位操作

luosha80 2002-12-28
  • 打赏
  • 举报
回复
我知道这个原理啊,我只是问问为什么最近两个会出现这种结果!
yatuor 2002-12-28
  • 打赏
  • 举报
回复
0 1
& 1 0
-----------
0 0
sorry
yatuor 2002-12-28
  • 打赏
  • 举报
回复
0 1
& 1 0
-----------
0 0
yatuor 2002-12-28
  • 打赏
  • 举报
回复
0 1
& 1 0
-----------
0 0

00001111
& 11111111
-----------
00001111
源码下载地址: https://pan.quark.cn/s/07e7935aff27 在Android应用开发过程中,`ImageView`作为一个基础组件被广泛运用,其主要功能是展示各种图像资源,这些资源可以来源于本地存储或通过网络获取。本文将详细阐述如何动态地变更`ImageView`所显示的图片内容,并借助自定义监听机制来监控和干预图片的加载流程。此类技术在应用开发中具有很高的实用价值,特别是在处理网络用户头像、商品展示图以及实时数据更新的场景下。 我们首先需要明确`ImageView`的基本操作方式。在Android平台,我们常通过`setImageResource()`、`setImageBitmap()`以及`setImageDrawable()`等函数来设定`ImageView`的图像内容。然而,这些方法主要适用于已加载至内存中的图像文件,对于网络图片,则需要借助更为复杂的处理逻辑。 在实现动态下载并更新`ImageView`中的图像时,我们普遍采用`AsyncTask`或`Loader`来执行后台任务,以此防止主线程被阻塞。本文将重点介绍自定义监听器的构建方法。自定义监听器能够让我们依据图片加载的进程或状态来执行特定的任务,例如显示加载进度指示器或处理加载失败的情况。 自定义监听器通常定义为一个接口,其中包含了若干个回调方法,例如`onStart()`、`onProgressUpdate()`、`onSuccess()`、`onError()`等。以下是一个示例接口定义: ```java public interface ImageDownloaderListener { void onStart(); void onProgress(int ...

70,040

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧