会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
DaveZhan
博客园
首页
新随笔
联系
管理
订阅
上一页
1
2
3
4
5
下一页
2014年10月8日
assert的用处
摘要: ASSERT函数是用于调试中,也就是说在你的代码中当是Debug的时候它完成对参数的判断,如果是TRUE则什么都不做,如果是FALSE则弹出一个程序中断对话框提示程序出现错误。在Release版本中它是什么作用都不起。它主要是监视程序在调试运行的过程中的运行情况,多多使用它,绝对有好处,没有一点坏处...
阅读全文
posted @ 2014-10-08 00:59 zhanbiqiang
阅读(218)
评论(0)
推荐(0)
2014年10月7日
&与&&的区别
摘要: 二元运算符 (&) 为整型和 bool 类型预定义了二进制 & 运算符。对于整型,& 计算操作数的按位“与”。对于 bool 操作数,& 计算操作数的逻辑“与”;也就是说,当且仅当两个操作数均为 true 时,其结果才为 true。条件“与”运算符 (&&) 执行布尔操作数的逻辑“与”运算,但如有必...
阅读全文
posted @ 2014-10-07 23:47 zhanbiqiang
阅读(194)
评论(0)
推荐(0)
x^y=(x&~y)|(~x&y)证明
摘要: 我见过最棒的证明是文氏图:(首先要知道二元布尔代数是集合的特殊情况,所以把X和Y当作两个集合,结论成立,那么在二元布尔代数里面也成立。)左边的圈是X,右边的圈是Y。如果是OR 也就是取或,中间的白色的也要填成红色的。但是,异或 的英文名字叫做exclusive-or ,意思是除掉了(中间部分)的or...
阅读全文
posted @ 2014-10-07 21:31 zhanbiqiang
阅读(531)
评论(0)
推荐(0)
a、b交换与比较
摘要: 1.有两个变量a,b,不用if、?: 、switch 或其他判断语句,找出两个数中较大的:int max = ((a+b)+abs(a-b))/2较小的:int min = ((a+b)-abs(a-b))/22.给3个整数a,b,c,用函数实现取3个数的中间数,不用sort。inline int ...
阅读全文
posted @ 2014-10-07 17:42 zhanbiqiang
阅读(175)
评论(0)
推荐(0)
x+y = ((x&y)<<1) + (x^y) 证明
摘要: 法一:我们考虑x,y在二进制表示时候,按位相加其中第i位xi+yi=((xi&yi)<<1)+(xi^yi)其中(xi&yi)<<1表示当xi和yi都是1是,需要进位1.xi^yi表示不考虑进位,当前位的值.把所有这些数据相加,也就是x+y=Sum{xi*2^i}+Sum{yi*2^i}=Sum{(...
阅读全文
posted @ 2014-10-07 16:56 zhanbiqiang
阅读(472)
评论(0)
推荐(0)
(x&y) + ((x^y)>>1)即x和y的算数平均值
摘要: (x&y) + ((x^y)>>1)相当于(x+y)/2(x&y)+((x^y)>>1),把x和y里对应的每一位(指二进制位)都分成三类,每一类分别计算平均值,最后汇总。其中,一类是x,y对应位都是1,用x&y计算其平均值;一类是x,y中对应位有且只有一位是1,用(x^y)>>1计算其平均值;还有一...
阅读全文
posted @ 2014-10-07 15:40 zhanbiqiang
阅读(323)
评论(0)
推荐(0)
默认参数提升
摘要: 在C语言中,调用一个不带原型声明的函数时:调用者会对每个参数执行“默认实际参数提升(default argument promotions)。同时,对可变长参数列表超出最后一个有类型声明的形式参数之后的每一个实际参数,也将执行上述提升工作。提升工作如下:——float类型的实际参数将提升到doubl...
阅读全文
posted @ 2014-10-07 10:19 zhanbiqiang
阅读(947)
评论(0)
推荐(0)
类型转换
摘要: int main (int argc, char **argv) { unsigned int a = 0xFFFFFFF7; unsigned char i = (unsigned char)a; char* b = (char*)&a; printf("i = %08x\nb = %08x\n",i,*b); return 0; } /* ----- E...
阅读全文
posted @ 2014-10-07 09:54 zhanbiqiang
阅读(282)
评论(0)
推荐(0)
闲扯原码,补码和反码(转)
摘要: http://blog.csdn.net/goal00001111/article/details/5490612
阅读全文
posted @ 2014-10-07 09:05 zhanbiqiang
阅读(125)
评论(0)
推荐(0)
2014年10月4日
C/C++中float和double的存储结构
摘要: int main (int argc, char **argv){ float a = 1.0f; cout <<"(int&)a = "<<(int&)a << endl; float b = 0.0f; cout <<"(int&)b = "<<(int&)b...
阅读全文
posted @ 2014-10-04 11:02 zhanbiqiang
阅读(884)
评论(0)
推荐(0)
上一页
1
2
3
4
5
下一页
公告