OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4794|回复: 32

来说说你都见过什么恶心的代码

[复制链接]

12

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2017-8-4
在线时间
38 小时
发表于 2018-9-14 10:30:05 | 显示全部楼层 |阅读模式
楼主见过最恶心的代码就是现在手上的项目,一个c函数几百行,局部变量几十个,注释却只有寥寥几行,写这个代码的人真的适合做程序员嘛?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2018-9-14 10:46:27 | 显示全部楼层
323232 发表于 2018-9-14 10:37
最恶心的代码——别人的代码

哈哈,没错,自己的永远是最好的,别人都是恶心的
学无止境
回复 支持 1 反对 0

使用道具 举报

9

主题

796

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2038
金钱
2038
注册时间
2017-8-2
在线时间
522 小时
发表于 2018-9-14 10:37:40 | 显示全部楼层
最恶心的代码——别人的代码
猪猪熊呢?
回复 支持 1 反对 0

使用道具 举报

9

主题

796

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2038
金钱
2038
注册时间
2017-8-2
在线时间
522 小时
发表于 2018-9-14 10:49:50 | 显示全部楼层
jermy_z 发表于 2018-9-14 10:46
哈哈,没错,自己的永远是最好的,别人都是恶心的

猪猪熊呢?
回复 支持 反对

使用道具 举报

3

主题

312

帖子

0

精华

高级会员

Rank: 4

积分
907
金钱
907
注册时间
2011-10-19
在线时间
196 小时
发表于 2018-9-14 11:14:57 | 显示全部楼层
本帖最后由 ufbycd 于 2018-9-14 11:19 编辑

一个源文件代码20万多行!主要是大量相似的代码堆起来的。改一个小东西就牵涉到上百个相似的函数!拖滚动条都拖半天!
敢问普天之下,谁与争锋!


回复 支持 反对

使用道具 举报

12

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2017-8-4
在线时间
38 小时
 楼主| 发表于 2018-9-14 11:45:29 | 显示全部楼层
ufbycd 发表于 2018-9-14 11:14
一个源文件代码20万多行!主要是大量相似的代码堆起来的。改一个小东西就牵涉到上百个相似的函数!拖滚动条 ...

这个是真恶心
回复 支持 反对

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8031
金钱
8031
注册时间
2014-8-13
在线时间
1595 小时
发表于 2018-9-14 12:21:26 | 显示全部楼层
我自己写的,一个switch写了快2W行,其中switch中嵌套八九层switch,一旦要修改某个地方,查找到天昏地暗。一看就吐,目的就是为一个展开16by22by6(就是A组对象有16个,B组对象有22个,A组对象的每个成员与B组对象的每个成员有6种耦合方法,每种方法都要单独处理)提供效率。
目前在写其面向对象方法,原先写法要处理16*22*6=2112种情况,现在写法只要处理16*6种情况即可,只是现在添加了中间层,效率会低不少。
回复 支持 反对

使用道具 举报

40

主题

250

帖子

0

精华

高级会员

Rank: 4

积分
854
金钱
854
注册时间
2016-11-13
在线时间
705 小时
发表于 2018-9-14 12:31:36 来自手机 | 显示全部楼层
我看别人的代码也是,唉,一个结构体里面的元素一大堆,注释都没有
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-9-14 13:18:26 | 显示全部楼层
最恶心的代码-别人的代码。还有就是别人的代码变量都不注释,代码逻辑混乱的一塌糊涂
回复 支持 反对

使用道具 举报

1

主题

33

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
251
金钱
251
注册时间
2015-10-13
在线时间
88 小时
发表于 2018-9-14 13:45:17 | 显示全部楼层
我觉得没必要注释那么多,函数名写好点就可以呢, 每个函数简单注释一下即可
回复 支持 反对

使用道具 举报

9

主题

796

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2038
金钱
2038
注册时间
2017-8-2
在线时间
522 小时
发表于 2018-9-14 13:56:29 | 显示全部楼层
每个函数前交代函数作用和变量、标志位等的作用。
猪猪熊呢?
回复 支持 反对

使用道具 举报

10

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2018-5-8
在线时间
27 小时
发表于 2018-9-14 13:57:08 | 显示全部楼层
正常,实际上大巴这样的人
回复 支持 反对

使用道具 举报

4

主题

380

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3088
金钱
3088
注册时间
2015-10-17
在线时间
320 小时
发表于 2018-9-14 14:18:23 | 显示全部楼层
好歹是c,改天,你看看汇编
回复 支持 反对

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2018-9-14 15:00:47 | 显示全部楼层
每行都注释的
回复 支持 反对

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2018-9-14 15:09:05 来自手机 | 显示全部楼层
楼主写过什么高级的代码,让我们见识下啊
回复 支持 反对

使用道具 举报

7

主题

185

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2729
金钱
2729
注册时间
2015-12-27
在线时间
469 小时
发表于 2018-9-14 15:39:42 | 显示全部楼层
一个函数几百行可以接受,但是一点注释没有那就说不过去了。
回复 支持 反对

使用道具 举报

1

主题

231

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2872
金钱
2872
注册时间
2018-1-24
在线时间
258 小时
发表于 2018-9-14 16:50:30 | 显示全部楼层
C语言没变量直接跳转查看,看上1个月就理清楚了
回复 支持 反对

使用道具 举报

4

主题

103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3299
金钱
3299
注册时间
2016-7-23
在线时间
269 小时
发表于 2018-9-14 16:58:28 | 显示全部楼层
没有注释的代码
回复 支持 反对

使用道具 举报

32

主题

190

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1184
金钱
1184
注册时间
2013-4-3
在线时间
222 小时
发表于 2018-9-14 17:17:42 | 显示全部楼层
本帖最后由 Xy201207 于 2018-9-14 17:19 编辑

变量名和它的实际用途没联系,
回复 支持 反对

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2018-9-14 17:38:10 | 显示全部楼层
我的代码应该是你们说的没啥注释的
其实不是没注释, 而是注释都在变量的名称函数的名称, 及宏的名称上
算法一般不用注释, 是另外有文件记录
回复 支持 反对

使用道具 举报

2

主题

685

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3448
金钱
3448
注册时间
2017-7-4
在线时间
869 小时
发表于 2018-9-15 00:08:06 | 显示全部楼层
ufbycd 发表于 2018-9-14 11:14
一个源文件代码20万多行!主要是大量相似的代码堆起来的。改一个小东西就牵涉到上百个相似的函数!拖滚动条 ...

这个牛逼,sqlite3的源码才13W行,也是一个文件。
回复 支持 反对

使用道具 举报

2

主题

756

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4163
金钱
4163
注册时间
2017-10-24
在线时间
251 小时
发表于 2018-9-15 08:45:20 | 显示全部楼层
我能说,恶心的代码,在咱们论坛中随处可见吗。。。

没有格式化,没有注释,奇葩的变量名函数名等符号的命名方法,还有一些乱七八糟的注释发上来之间都不知道删掉,
十六进制带我飞。
回复 支持 反对

使用道具 举报

12

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2017-8-4
在线时间
38 小时
 楼主| 发表于 2018-9-17 10:45:09 | 显示全部楼层
hgr211 发表于 2018-9-14 14:18
好歹是c,改天,你看看汇编

到是看过linux内核和UBOOT的汇编部分,只认得几个指令,给我的感觉是用多了记住了应该还可以
回复 支持 反对

使用道具 举报

12

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2017-8-4
在线时间
38 小时
 楼主| 发表于 2018-9-17 10:47:04 | 显示全部楼层
yklstudent 发表于 2018-9-14 15:09
楼主写过什么高级的代码,让我们见识下啊

粗鄙的代码,就不献丑了,不过最起码我注释的很清楚,基本都能看懂
回复 支持 反对

使用道具 举报

12

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2017-8-4
在线时间
38 小时
 楼主| 发表于 2018-9-17 10:50:43 | 显示全部楼层
钩月黄昏 发表于 2018-9-14 15:39
一个函数几百行可以接受,但是一点注释没有那就说不过去了。

很少的注释,特别少,还有BUG,贼难找
回复 支持 反对

使用道具 举报

5

主题

133

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1372
金钱
1372
注册时间
2018-3-5
在线时间
741 小时
发表于 2018-9-17 21:55:07 | 显示全部楼层
找到了一行这个,#define TRUE FALSE
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2017-9-17
在线时间
3 小时
发表于 2018-9-20 15:35:05 | 显示全部楼层
nnqtdf 发表于 2018-9-17 21:55
找到了一行这个,#define TRUE FALSE

这个可以有,真做假来假亦真
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-25
在线时间
2 小时
发表于 2018-9-25 15:04:29 | 显示全部楼层
",#define TRUE FALSE"  这是要真还是假?
回复 支持 反对

使用道具 举报

64

主题

446

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1032
金钱
1032
注册时间
2017-7-26
在线时间
275 小时
发表于 2018-9-26 09:10:42 | 显示全部楼层
mack13013 发表于 2018-9-14 12:21
我自己写的,一个switch写了快2W行,其中switch中嵌套八九层switch,一旦要修改某个地方,查找到天昏地暗。 ...

不尝试用菜单结构体?
回复 支持 反对

使用道具 举报

0

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
762
金钱
762
注册时间
2018-7-25
在线时间
276 小时
发表于 2018-9-26 09:43:36 | 显示全部楼层
323232 发表于 2018-9-14 10:37
最恶心的代码——别人的代码

扎铁了,老心。。
回复 支持 反对

使用道具 举报

56

主题

520

帖子

0

精华

高级会员

Rank: 4

积分
964
金钱
964
注册时间
2014-11-18
在线时间
160 小时
发表于 2018-9-26 10:05:24 | 显示全部楼层
本帖最后由 aiyeba 于 2018-9-26 10:07 编辑

如果不是什么大工程,赶紧重新自己写吧。  果断一些。

这个叫做:当断则断,毫无隐患。当断不断,必受其乱。
自己选择的路,成家前走完。
回复 支持 反对

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8031
金钱
8031
注册时间
2014-8-13
在线时间
1595 小时
发表于 2018-9-26 13:06:24 | 显示全部楼层
a3748622 发表于 2018-9-26 09:10
不尝试用菜单结构体?

树? 实现起来不难,但是他要求效率,不能有其他驳杂的东西。
回复 支持 反对

使用道具 举报

9

主题

796

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2038
金钱
2038
注册时间
2017-8-2
在线时间
522 小时
发表于 2018-9-26 13:14:29 | 显示全部楼层
aiyeba 发表于 2018-9-26 10:05
如果不是什么大工程,赶紧重新自己写吧。  果断一些。

这个叫做:当断则断,毫无隐患。当断不断,必受其 ...

就怕别人不懂的会说   你这玩意不是有参考的程序吗,加点东西不就行了?怎么写的那么慢呢?
猪猪熊呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 01:25

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表