C基础
Augus
用艺术娱乐大众,用技术实现梦想!每一个小小的进步都是自我实现的星星之火,期待有一天能迸发出恒星的光彩,照亮一片宇宙!
展开
-
绝对值abs为负数引发的神秘滑行
起因是当角色跟掉落物品在一个水平线的时候,角色会不自主的往右侧滑动,连偶尔路过到这条线的马也会被波及到,产生很囧的滑行,难道是他们想参加冬奥滑雪想疯了?好吧,这是一个BUG!那么是逻辑出问题了?检查逻辑,发现在碰撞检测的地方,使用到了Abs这个函数用于判断间距是否小于碰撞范围,这时候x方向(水平方向间距)始终为负!贴下代码:// 取绝对值template<>inline int Abs<int>(const int &x){ int y = x >&g原创 2022-03-07 12:32:27 · 343 阅读 · 0 评论 -
浅析补码
计算机为了表达正负整数,把最高位单独拿出来,0代表正、1代表负,于是乎为了简化符号位带来的运算复杂,出现了补码。 理解补码必须首先理解模:1)前提:表达整数的最小绝对值为0;2)钟表的表盘分成12等分,把12点看做0点,时针所在的位置总共有12种情况(0~11),12就是模。3)8位数可以表达二进制为0000 0000~1111 1111(即十进制的0~255)的数值,也就是二原创 2016-08-27 15:39:35 · 769 阅读 · 0 评论