雷大亨
《The C Puzzle Book》读书笔记
原创
关注作者
前往小程序,Get
更优
阅读体验!
立即前往
腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
雷大亨
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
社区首页
>
专栏
>
《The C Puzzle Book》读书笔记
《The C Puzzle Book》读书笔记
原创
雷大亨
关注
修改于 2018-01-01 18:53:29
709
0
修改于 2018-01-01 18:53:29
举报
文章被收录于专栏:
遊俠扎彪
遊俠扎彪
2008-10-10
赋值表达式的值是=右边的计算结果。如(x=3*2)=6.
实际编程中不要随便玩puzzle。
赋值操作符的优先级低于算术运算。如x
=3+2和x
=(3+2)等价。
&&优于||.
宏定义是替换型的。
z=x/++x是容易产生副作用的代码,由编译器决定被除数值的情况。C程序的副作用几乎都与变量的值无法预料有关。
如果一个字符串能解释成多个操作符,编译器将按照“构成操作符的字符个数越多越好”的原则来作出选择。
形参前面加上一个#字符做前缀,使得实参被括在一对引号里。C预处理器将会自动将相邻的字符串合并。如,printf(#int"=%d",int),可为printf("int""=%d",3),可为printf("int=%d",3)。
复杂的puzzle可先进行优先级的绑定,加上括号,由里至外进行计算。
数值处理非C之强项,因其无法捕获算术也算错误。C中,数值数据类型的取值范围是有编译器决定的,程序员无法在C程序中对此作出调整。
进行算术运算的时候,最好避免使用不同类型的操作数,如必用,小心为妙。
头文件使用时,预处理器会把头文件的声明替换为头文件的内容,从而生效。
else会被归入最接近它的if语句,如,if(y<0) if(y>0) x=3;else x=5;等价于if(y<0){ if(y>0) x=3;else x=5;}.应当先将不熟悉的模式转化成熟悉的模式,再行处理。
sum+=y在循环中,只是求解y各变值的和,变体可为x+=++y.
注意循环体中执行的结果,如while(y<10){x=y++;z=++y},y值并不是“连续”被while条件判断的,因里面有两个++.
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
ide
编程算法
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
ide
编程算法
评论
登录
后参与评论
0 条评论
热度
最新
推荐阅读
LV.
关注
文章
0
获赞
0
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档
0
0
0
推荐