【发布时间】:2015-01-04 21:54:34
【问题描述】:
这是 c 中的代码示例,我不确定条件“k & 1”是什么意思。
int k,i,c;
k = i >> c;
if (k & 1)
printf("1");
else
printf("0");
【问题讨论】:
-
拜托,学习初始化局部变量。在使用它们之前。恕我直言,实际上将任何变量初始化为某个值总是一个好主意。如果说
k是5,在4-bits(nibble)中,这将变成0101。现在用1对这个二进制数执行AND操作,就像0101 & 0001将得到0001作为结果,因为k的最后一位是ON或k 是odd。跨度>
标签: c