扒一扒那些年我们遇到的奇葩代码
发布于 6 年前 作者 wslongchen 3100 次浏览 来自 分享

前言

本文首发于公众号【一名打字员】

在工作中,我们通常会遇到传说中的“祖传”代码,有些是否让我们感到哭笑不得,今天本猿整理一下自己以及网络上出现过的奇葩代码。来源于互联网的均会标明出处。

TOP1

当仁不让的当然是传说中的“睡排序”,/手动捂脸

#include <chrono>
#include <iostream>
#include <thread>
#include <vector>
 
int main(int argc, char* argv[]) {
  std::vector<std::thread> threads;
 
  for (int i = 1; i < argc; ++i) {
    threads.emplace_back([i, &argv]() {
      int arg = std::stoi(argv[i]);
      std::this_thread::sleep_for(std::chrono::seconds(arg));
      std::cout << argv[i] << std::endl;
    });
  }
 
  for (auto& thread : threads) {
    thread.join();
  }
}

当然他输出的结果是

./a.out 8 15 14 9 17 20 16 24 6 24 21 23 19 23 19 
6
8
9
14
15
16
17
19
19
20
21
23
23
24
24 

本猿觉得,其实除了名称奇葩以外,其它还是很正常的。(逃 from WIKI

TOP2

拼写容错,在知乎上看到的,23333…

#define ture true
#define flase false
#define viod void

from B乎

TOP3

变量命名是个体力活,常年混迹GITHUB(复制粘贴代码)的本猿,看过太多各种各样的命名了。我发现一个规律,小公司或者外包公司的打字员们,通常因为进度问题(当然也有可能有其它原因,我不管我不管),在一个函数方法内部会出现这样的命名。int a=0,aa=0,aaa=0,b=0,bb=0,bbb=0,c=0,cc=0,ccc=0,还有这样的

enum color{
     black,//黑色
     hong //红色   
    }

这位打字员,你是不知道红色的英文是啥吗还是要搞事情啊…

TOP4

是时候祭出当年我为代码开光的注释了:


                            _ooOoo_
                           o8888888o
                           88" . "88
                           (| -_- |)
                            O\ = /O
                        ____/`---'\____
                      .   ' \\| |// `.
                       / \\||| : |||// \
                     / _||||| -:- |||||- \
                       | | \\\ - /// | |
                     | \_| ''\---/'' | |
                      \ .-\__ `-` ___/-. /
                   ___`. .' /--.--\ `. . __
                ."" '< `.___\_<|>_/___.' >'"".
               | | : `- \`.;`\ _ /`;.`/ - ` : | |
                 \ \ `-. \_ __\ /__ _/ .-` / /
         ======`-.____`-.___\_____/___.-`____.-'======
                            `=---='

         .............................................
                  佛祖保佑             永无BUG

说起来,早些年我的代码里还是有很多这种注释的。2333 移步GITHUB

TOP5

在这里推荐一个网站,上面有很多这种好玩的东西,比如说下面这种

image.png

from xkcd

结语

大家平常有遇到啥好玩的东西或者是想要完成什么功能都可以发给【一名打字员】,本猿一定让你很满意的。最后希望大家都能写出没有bug的代码,一次编译一次通过。(逃

回到顶部