(读书笔记)C缺陷与陷阱 第一、二章

来源:互联网 发布:网络大电影用户分析 编辑:程序博客网 时间:2024/06/05 08:06

看完一、二章,记些笔记,作为参考。。

1(1.3):词法分析中的"贪心法"--即每一个符号应该包含尽可能多的字符

譬如a---b 等同于 a -- -b,而不是a- --b;

譬如y=x/*p,编译器会把/*当成是一段注释开始,而不是看成y=x/(*p);

当然可以写成y=x/ *p,即中间加空格,无疑,加括号更加能清楚的表达本来的意图。

在实际编程中,要防止这种可能存在的准二义性问题,要明确表达意图。


2(1.4):整型常量若以0开头,会被视为八进制数。故10和010含义截然不同,注意之。


3(2.2):运算符优先级问题:

    优先级最高的是:数组下标[]、函数调用操作符()、各结构成员选择操作符->

     接下来是单目运算符:! ~  ++ -- - (type) * & sizeof 

     注意:单目运算符是自右向左结合的,故*p++等同于*(p++),而非*p(++)

    接下来是双目运算符:算术>移位>关系运算符>逻辑运算符

    注:(1)6个关系运算符优先级并不同:==,!=比其他的低,故a<b==c<d等同于(a<b)==(c<d);

           (2)逻辑运算符之间的优先级都不同:位运算符>顺序运算符,  与(&,&&)>或(|,||)。

    接下来是条件运算符,再是赋值。

    注:赋值运算符的结合方式是从右到左的。。

    即:a=b=0;等同于b=0;a=b;


4(2.6):悬挂else问题:else始终与同一对括号内最近的未匹配的if结合


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 乐视手机音量小怎么办 手表日期调过了怎么办 机械表日期不走怎么办 差银行钱还不起怎么办 有人威胁要杀我怎么办 受人威胁要打我怎么办 胳膊起疙瘩很痒怎么办 后背长很多痘痘怎么办 肩膀两边长痘痘怎么办 红酒喝了过敏了怎么办 脚底长湿疹很痒怎么办 怀孕脚痒怎么办小窍门 孕妇烂脚丫和痒怎么办 腿上都是红血丝怎么办 全身皮肤干痒怎么办啊 脸过敏干痒脱皮怎么办 脸过敏了特别干怎么办 太阳晒后皮肤红怎么办 皮肤晒过后很痒怎么办 脸突然又红又痒怎么办 膝盖又红又痒怎么办 脸又红又痒怎么办 皮肤红痒有点热怎么办 浑身起红疙瘩 痒怎么办 身上长红包很痒怎么办 喝酒后身上很痒怎么办 身上长了小红包怎么办 腿长红包很痒怎么办 14岁脸上有雀斑怎么办 皮肤痒起红点或红块怎么办 脸过敏像长痱子怎么办 脸上有淡淡白块怎么办 过敏了脸上会起小疙瘩怎么办 脸过敏出红疙瘩怎么办 脸上长红色的小疙瘩怎么办 脸上都是小米粒痘痘怎么办 小孩身上起风团疙瘩怎么办 脸上长疙瘩很痒怎么办 一个多月宝宝脸上有湿疹怎么办 脸上发红发痒起疙瘩怎么办 脸过敏了怎么办最简单