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

全部博文(108)

文章存档

2011年(3)

2010年(43)

2009年(19)

2008年(43)

我的朋友

分类: C/C++

2009-04-17 15:31:18

1.使用ANSI C标准
2.const
const并不能把变量变成常量,在一个符号前面加const只是使其成为可读的。
const int *ptr1   ptr1是一个指向const int的指针 (常量指针)
const *int ptr2   ptr2是一个指向int的const指针 (指针常量)
const和*的组合通常用在数组形式的参数中模拟传值调用,它声称“我给你一个指向它的指针,但是你不能修改它”
3.ANSI C标准中的类型转换:
当执行算数运算时,操作数的类型如果不同,就会发生转换,数据类型一般朝着浮点精度更高,长度更长的方向转换,整型数如果转换为signed不会丢失信息,就转换为signed,否则转换为unsigned
对符号类型的建议:
尽量不要在代码中使用无符号类型,以免增加不必要的复杂性,尤其是,不要仅仅因为无符号数不存在负值(如年龄,国债)而用它来表示数量。
尽量使用int那样的有符号类型,这样在涉及升级混合类型的复杂细节时,不必担心边界情况。
只有在使用位段和二进制掩码时,才可以使用无符号数,应该在表达式中使用强制类型转换,使所有的操作数均为有符号数或者无符号数,这样就不必由编译器来选择结果的类型。
阅读(562) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~