你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

看这几个C语言例子!

[复制链接]
gaosmile 发布时间:2020-9-4 20:16

曾经我一直以为自己C语言学的还挺好的,直到看到这几个例子。

例1

首先来看一下,大师是如何求圆周率的,一口君实在词穷,first卧槽

#include <stdio.h>
    long a=10000,b=0,c=10000,d,e,f[10001],g;
    void main()
    {
    for(;b != c; f[b++] = a/5);
    for(; d=0,g=c*2,c>5000; c--,printf("%.4d",e+d/a),e=d%a)
    for(b=c;d+=f*a,f=d%--g,d/=g--,--b;d*=b);
    }

执行结果:

微信图片_20200904201314.png

例2

模拟图灵机打印基为2的斐波纳契数,double卧槽

#include <stdio.h>
#define f int
#define v (void)printf(
#define x ),exit(1);
#define y ){if(n)c=z(n,u),u=n,n=c;o=n?'0'+(1&*n):'0';}
#define z(a,b) (f*)(~1&*a^(f)b)
#define k(l) if(!(l=(f*)malloc(sizeof(l))))v 23+m x if(1&(f)l)v 39+m x*l=
r(p,q,d)f*p,*q;{char o[81];f*n=p,i=39,*c,*u=d?q:z(p,q);o[40]='0'+(1&*p);
for(;i>=0;i--y u=d?z(p,q):q;n=p;for(i=41;i<79;i++y o[i++]='\r';o[i++]=0;
v o);(void)fflush(stdout);sleep(1);}
main(a,c)char**c;{char*u,*malloc(),*m=
"Usage: black [string]\n\0No more memory\n\0Unusable memory alignment\n\0jt,s@m@ (beleY%XX&Yz {z&z}i|R(|)*((.)i)hiniFiGJ%FG.JJgJ: ;;&;z {z&z}-RS/ROiOV OP+PsaPh+ijainnjmamfmfAlnnnnphppopv%vvgv.aABiB1/BVP11/1.%..&.OhrR-WV V1#1VP1CcC0R\
\n\n'CVP0\n!\n\n'\nEaEEnEamat!akckk'kwaww'wz,zzozEit +",
*n=m;f*q,*p=0,*g,b=3,d;
if(a>2)v m x n=a>1?c[1]:n;
/*v"\t\t\t\t\tV\n");*/
k(q)0;u=n;a=~1&'j';
while(a!='x'){
/*r(q,p,b);*/
for(;;u+=3){
  u= *u?u:n;
  if((~1&*u)==a&&(1&*q)<<1==(2&u[2]))break;
}
a=~1&u[1];
d=(8&u[2])>>3;
if(16&u[2])putchar(u[3]);
if(4&u[2])*q|=1;else*q&=~1;
if(b==d)g=p;else{
  g=z(q,p);
  if(!g){k(g)(f)q;*q^=(f)g;}
}
p=q;q=g;b=1-d;
}
/*r(q,p,b);v"\n");*/exit(0);
}

执行结果:

微信图片_20200904201318.png

例3#include <stdio.h>
main(int t,int _,char* a)
{
    return !0<t?t<3?main(-79,-13,a+main(-87,1-_,
main(-86,0,a+1)+a)):1,t<_?main(t+1,_,a):3,main(-94,-27+t,a)&&t==2?_<13?
main(2,_+1,"%s %d %d\n"):9:16:t<0?t<-72?main(_,t,
"@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n{n+,/+#n+,/#;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/")
:t<-50?_==*a?putchar(a[31]):main(-65,_,a+1):main((*a=='/')+t,_,a+1)
:0<t?main(2,2,"%s"):*a=='/'||main(0,main(-61,*a,
"!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"),a+1);
}

是的,你没有看错,这个代码没有问题,可以编译,执行结果:

微信图片_20200904201321.png
微信图片_20200904201325.png

居然是这个执行结果,treble卧槽,聊表敬意。

【作者是Ian Phillipps】

例4

这个极富行为艺术的小火车,已经让一口君已经开始彻底怀疑人生了!quadra卧槽

微信图片_20200904201328.png

结果如下:

peng@ubuntu:~/test$ ./marshall
      choo choo

例5

如果你仍然觉得just so so,那好吧,你再看下面这个代码,简直就是艺术与代码的天作之合。

我相信这个代码的作者一定是个满脸络腮胡子油腻的抠脚撸串肥宅男,否则怎么会画出这么惊世骇俗、震惊寰宇、美的不可方物、如此卡哇伊的小萝莉!penta卧槽!!!!!

微信图片_20200904201331.png

看下他的执行结果吧:

微信图片_20200904201335.png

这些代码是IOCCC 【(The International Obfuscated C Code Contest)国际C语言混乱代码大赛是一项国际编程赛事】的一些获奖作品,有兴趣可以去搜索下。

毫无疑问,这些大师都是世界上最顶级的C语言程序员,都是god like、legendary。在这里我们就不讨论这些代码了,一口君并不是鼓励你也去写这样的代码(关于这些代码的分析,你可以上网查询)。恰恰相反,我要告诉大家的是:大师把代码写成这样是经典,你把代码写成这样是垃圾!所以在垃圾和经典之间,你需要做一个抉择。

C语言博大精深,各位码农,且学且珍惜!


收藏 评论1 发布时间:2020-9-4 20:16

举报

1个回答
toofree 回答时间:2020-9-10 09:10:50
老板,例1是用什么编译器编译的?我这试了几个编译器,都报错。

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版