设为首页 加入收藏

TOP

C专家编程读书笔记(上)
2014-11-09 12:30:05 来源: 作者: 【 】 浏览:37
Tags:专家 编程 读书 笔记

1、尽量不要在你的代码中使用无符号类型,以免增加不比要的复杂性。尤其是不要仅仅因为无符号书不存在负值(如年龄、国债)而用它来表示数量。尽量使用int那样的有符号类型,这样在涉及升级混合类型的复杂细节时,不必担心边界情况(如-1被翻译为非常大的正数)。只有在使用位段和二进制掩码时,才可以用无符号数,应该在表达式中使用强制类型转换,使操作数均为有符号或者无符号数。

2、这也是为什么C++ 语言令人失望的原因:它对C语言中存在的一些最基本的问题没有什么改进,而它对C语言最重要的扩展(类)却是建立在脆弱的C类型模型上。

3、看一段代码:
int main(void)
{
int pa=0;
char * avarsc[] =
{
"color monitor",
"big disk",
"Cray"
"on-line drawing routhines",
"mouse",
"keyboard",
"power cables",
};
char ** pp;
pp = avarsc;

printf("%s ", avarsc[2]); // output Crayon-line drawing routhines
printf("%s ", *(pp++)); // output big disk
scanf("%d", pa);
return 1;
}
注意字符串数组的定义,最后那个逗号,还有"Cray"后头没有逗号其实avarsc是个字符指针的指针
曾经写过一个这样错误的代码,要为一个字符串: "" 申请 空间,应该是STRLEN("""")却写成了STRLEN(""""),编译没有错误,也就没有注意,在后来走查代码的时候,发现了错误的地方,多亏为它多申请了不少空间,不然这又是个难以察觉的内存错误。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言程序设计(第9章实用编程技巧) 下一篇2011年计算机等级考试二级C语言常..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: