说说自己写过的最难懂的代码吧。

2015-11-19 09:52:32 +08:00
 jukka

define false true #define malloc(size) malloc(size-1) 这些只能算技巧。语义上的坑才是坑。

我先自爆一个,毕业第一年,刚入游戏行业的时候,在做小游戏,平台是 cheap phone(MTK)。

当时公司用的自研引擎,引擎层并不支持屏幕 90°翻转。 320x480, x->(0, 320), y->(0, 480) Leader 说过几天给加上(但是当时我并不知情)。

然后我就按照 x->(0, 480), y->(0,320) 的前提下,开始写代码了。

所有的角度旋转,坐标计算,全部都是在我脑子里按照 90°翻转后的坐标去写的。不管是 touch-test 还是 actor movement 。

然后我的 BOSS 维护了一下我的代码,这酸爽。

6211 次点击
所在节点    程序员
37 条回复
ShiHou
2015-11-19 11:02:23 +08:00
当然是写硬件代码了... 脑子里模拟十几个状态机之间互相通讯,更别说写出来的代码了。
aheadlead
2015-11-19 11:14:06 +08:00
汇编…
jayzjj000
2015-11-19 11:18:19 +08:00
无比同意楼上,所有关于硬件的、各种机器语言的,都特么难懂的一笔

---

记得 Ourcoders 里面还讨论过一个问题是要不要写注释,里面各种大牛都是各种“看不懂的代码就不是好代码,就要重构”,看的时候泪流满面,大哥帮我重构把
rock_cloud
2015-11-19 11:23:24 +08:00
joewangyz
2015-11-19 11:25:05 +08:00
大学时候的汇编大作业 还有编译器。。
rock_cloud
2015-11-19 11:25:33 +08:00
https://gist.github.com/3e4845adead207159bc3.git
之前一个项目里用到了些正则。。。现在已经看不懂了=。=
zonghua
2015-11-19 11:37:17 +08:00
各种排序查找,都是嵌套循环
DingSoung
2015-11-19 12:13:52 +08:00
XD 曾经用汇编写过[CRC32 CRC16]( https://github.com/DingSoung/DDT/tree/master/crc)
wizardforcel
2015-11-19 12:24:34 +08:00
跟 lz 差不多 一个大作业中队友把坐标弄反了 于是我想调用它的东西 就得之前加一层转换
ifconfig
2015-11-19 12:35:23 +08:00
三层嵌套循环,从 value 到 val 再到 v 命名,嘻嘻
ikaros
2015-11-19 12:41:49 +08:00
感觉自己没有写过什么特别难懂的吧,无非是函数拆分模块化上处理的问题,而且用的语言很简单. 如果真要说难懂的话大概就是有切字符串的习惯, token.String()[:6]这样,不过一般都会注释这是取什么
LioMore
2015-11-19 12:52:41 +08:00
string ZFC;
string ZXYJ;
int SZ;
int BH;

程序的变量还有对象里全是这种命令方式,以及数据库全都是这样的表和字段,谁能看懂?
LioMore
2015-11-19 12:54:21 +08:00
不好意思,打错字,更正一下,是「命名方式」
hackerwgf
2015-11-19 12:59:08 +08:00
三个月之前的代码感觉就毛都看不懂了
doublleft
2015-11-19 13:03:47 +08:00
不是我的,调试别人的

当时发现有一个 bug ,可以复现但是似乎没有任何条件,其触发随机到怀疑人生,仔细断点反复排插后发现是随机字符串生成变量然后各种传递,这个随机种子不够复杂,经常重复所以……
viator42
2015-11-19 13:15:04 +08:00
var a = <? echo $b; ?>;
php 赋值给 js.相当相当不标准的写法,当时憋得我实在没招了
hoythan
2015-11-19 13:19:21 +08:00
@viator42 那是你方法问题。
des
2015-11-19 13:36:13 +08:00
我是来搞笑的
!(x^y)
adexbn
2015-11-19 13:46:57 +08:00
?1
sophymax
2015-11-19 13:51:40 +08:00
上学时期写的快速傅里叶变换的程序, 里面的蝶形变换 , 想起来 CPU 的有条汇编指令可以直接进行那个位运算 , 就在 C++里嵌入了一大段汇编

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/237221

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX