Chinaunix首页 | 论坛 | 博客
  • 博客访问: 237043
  • 博文数量: 108
  • 博客积分: 3092
  • 博客等级: 中校
  • 技术积分: 1172
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-25 16:35
文章分类

全部博文(108)

文章存档

2011年(3)

2010年(43)

2009年(19)

2008年(43)

我的朋友

分类: C/C++

2008-10-28 21:15:24

1.switch的陷阱
switch中case的作用只是个标号,某个分支中的代码执行完之后,程序进入下一个分支继续执行,如果不想这样,要用break,今天写一个小的统计程序时就犯了这个错误,导致了第二个统计变量累计了第一个变量的值,remember to break in switch,注意基础知识要牢固,小q.
 
2.有符号数的表示
有符号数除符号位外,其它位是用2的补码形式表示的
eg: 10000000->-128
    11111111->-1
 
3.将某数的指定位置0
推荐一种与字长无关的方式:
x=x& ~077 (将最后6位置0)
 
4.取的机器字长的方法
int wordlen()
{
   int i;
   unsigned v = (unsigned) ~0;
   for(i=1;(v=v>>1)>0;i++);
   return i;
}
 
阅读(1015) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~