chenglong7997

chapter 3(语义陷阱)

1.int a[10]; 除了a被用作运算符sizeof()的参数这一情况,在其他所有的情形中,数组名a都代表指向数组a中下标为0的元素的指针。
因此,int *p=a; //right
int  *p=&a; //error, (&a已经是一个指向整个数组的指针)

2.为main函数提供返回值
main()
{}
隐含着main返回整数,一个返回整数的函数如果返回失败,实际上隐含返回某个“垃圾”整数,只要该值不被用到,就无关紧要。
然而,在某些情况下,main的返回值却并非无关紧要,大多数C语言实现通过main的返回值,来告知操作系统该函数的执行是成功还是失。如果一个程序的main函数并不返回任何值,那么有可能看上去执行失败。所以最好提供返回值

3.边界计算与不对称边界。
适合c中以下标为0开始的计算。

posted on 2012-06-24 23:53 Snape 阅读(223) 评论(0)  编辑 收藏 引用 所属分类: Traps


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

<2012年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

统计

常用链接

留言簿

随笔分类

随笔档案

文章分类

文章档案

my

搜索

最新评论

阅读排行榜

评论排行榜