这世间真是无奇不有,达人们的hello,word也可以如此精彩纷呈,下面的六个程序片段主要完成这些事情:
输出Hello, World
混乱C语言的源代码
下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C++的编译器g++才能编程通过。
程序一:
#define _________ }
#define ________ putchar
#define _______ main
#define _(a) ________(a);
#define ______ _______(){
#define __ ______ _(0x48)_(0x65)_(0x6C)_(0x6C)
#define ___ _(0x6F)_(0x2C)_(0x20)_(0x77)_(0x6F)
#define ____ _(0x72)_(0x6C)_(0x64)_(0x21)
#define _____ __ ___ ____ _________
#include _____
程序二:
#include
main(){
int x=0,y[14],*z=&y;*(z++)=0x48;*(z++)=y[x++]+0x1D;
*(z++)=y[x++]+0x07;*(z++)=y[x++]+0x00;*(z++)=y[x++]+0x03;
*(z++)=y[x++]-0x43;*(z++)=y[x++]-0x0C;*(z++)=y[x++]+0x57;
*(z++)=y[x++]-0x08;*(z++)=y[x++]+0x03;*(z++)=y[x++]-0x06;
*(z++)=y[x++]-0x08;*(z++)=y[x++]-0x43;*(z++)=y[x]-0x21;
x=*(--z);while(y[x]!=NULL)putchar(y[x++]);
}
程序三:
#include
#define __(a) goto a;
#define ___(a) putchar(a);
#define _(a,b) ___(a) __(b);
main()
{
_:__(t)a:_('r',g)b:_('$',p)
c:_('l',f)d:_(' ',s)e:_('a',s)
f:_('o',q)g:_('l',h)h:_('d',n)
i:_('e',w)j:_('e',x)k:_('n',z)
l:_('H',l)m:_('X',i)n:_('!',k)
o:_('z',q)p:_('q',b)q:_(',',d)
r:_('i',l)s:_('w',v)t:_('H',j)
u:_('a',a)v:_('o',a)w:_(')',k)
x:_('l',c)y:_('t',g)z:___(0x0)
}
程序四:
int n[]={0x48,
0x65,0x6C,0x6C,
0x6F,0x2C,0x20,
0x77,0x6F,0x72,
0x6C,0x64,0x21,
0x0A,0x00},*m=n;
main(n){
putchar(*m)!=' '?main(m++):exit(n++);
}
程序五:
main(){int i,n[]={(((1< <1)<<(1<<1)<<(1<<
1)<<(1<<(1>>1)))+((1< <1)<<(1<<1))), (((1
<<1)<<(1<<1)<<(1<<1)<<(1<<1))-((1<<1)<<(
1<<1)<<(1<<1))+((1<<1)<<(1<<(1>>1)))+ (1
< <(1>>1))),(((1< <1)<<(1<<1)<<(1<<1)<< (1
<<1))-((1<<1)<<(1<<1)<<(1<<(1>>1)))- ((1
< <1)<<(1<<(1>>1)))),(((1< <1)<<(1<<1)<<(1
<<1)<<(1<<1))-((1<<1)<<(1<<1)<<(1<<(1>>1
)))-((1< <1)<<(1<<(1>>1)))),(((1< <1)<< (1
<<1)<<(1<<1)<<(1<<1))-((1<<1)<<(1<<1)<<(
1<<(1>>1)))-(1< <(1>>1))),(((1< <1)<<(1<<1
)<<(1<<1))+((1<<1)<<(1<<1)<<(1<<(1>>1)))
-((1< <1)<<(1<<(1>>1)))),((1< <1)<< (1<<1)
<<(1<<1)),(((1<<1)<<(1<<1)<<(1<<1)<<(1<<
1))-((1<<1)<<(1<<1))-(1<<(1>>1))),(((1< <
1)<<(1<<1)<<(1<<1)<<(1<<1))-((1<<1)<< (1
<<1)<<(1<<(1>>1)))-(1< <(1>>1))), (((1< <1
)<<(1<<1)<<(1<<1)<<(1<<1))- ((1<<1)<< (1
<<1)<<(1<<(1>>1)))+(1< <1)), (((1<<1)<< (
1<<1)<<(1<<1)<< (1<<1))-((1<<1)<< (1<<1)
<<(1<<(1>>1)))-((1< <1) <<(1<< (1>>1)))),
(((1< <1)<< (1<<1)<<(1<<1)<< (1<<1))- ((1
<<1)<<(1<<1)<<(1<<1))+((1<<1)<< (1<<(1>>
1)))), (((1< <1)<<(1<<1) <<(1<<1))+(1<<(1
>>1))),(((1< <1)<<(1<<1))+((1<<1)<< (1<<(
1>>1))) + (1< < (1>>1)))}; for(i=(1>>1);i
< (((1<<1) <<(1<<1))+((1 <<1)<< (1<<(1>>1
))) + (1< <1)); i++) printf("%c",n[i]); }
程序六(只能由C++的编译器编译(比如:g++)):
#include
#define _(_) putchar(_);
int main(void){
int i = 0;
_(++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++i)
_(++++++++++++++++++++++++++++++++++++++++++++++++++++++++++i)
_(++++++++++++++i)
_(--++i)
_(++++++i)
_(--------------------------------------------------------------------------------------------------------------------------------------i)
_(------------------------i)
_(++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++i)
_(----------------i)
_(++++++i)
_(------------i)
_(----------------i)
_(-------------------------------------------------------------------------------------------------------------------------------- ------i)
_(----------------------------------------------i)
return i;
}
两个字:纠结
hello world 总是这么经典。。当时学C#的时候就是这个 你好世界
wordpress也是你好,世界!
境界灰常之高!
汗…你也去试试发明一种新写法!注意要c语言
膜拜
不带这么坑爹的吧 = = 表示看不懂这逻辑 = –
可是我试了几个,的确是输出hello,world
我是不会这么纠结的
表示写这些代码的程序猿已经到了一种神的境界
闲着蛋疼都有可能!
你还写不出来呢!
我蛋不疼!
这回的好!
哈哈!
你又来刷回复了啊
看不懂……
看不懂呢
我也看不懂…很混乱吧!
墙啊…
你的网站“有点”慢啊!
而且突然建立数据库连接错误
其实我发现这个问题了呢
难道是mysql查询过多?多大访问量啊
看网站貌似不大啊?
深藏不露额呵呵
菜鸟一只
这种写法,真是够BT的。难道是混乱代码大赛的作品?
结果输出的居然是hello,world
顺便问一下,为嘛在你的网站留言,有回复都不给邮件通知的?
几次看到自己的名字旁边有个红色底儿的数字,刚才好奇点了一下,才发现是说你有回复我还没看。
你没有填写邮箱啊…怎么通知!
退出…直接点发布(游客发布)或在duoshuo.com填邮箱…
原来如此