• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 297,  comments - 15,  trackbacks - 0

            下面的六個程序片段主要完成這些事情:

            1. 輸出Hello, World
            2. 混亂C語言的源代碼

            下面的所有程序都可以在GCC下編譯通過,只有最后一個需要動用C++的編譯器g++才能編程通過。

            hello1.c

            01     #define _________ }
            02     #define ________ putchar
            03     #define _______ main
            04     #define _(a) ________(a);
            05     #define ______ _______(){
            06     #define __ ______ _(0x48)_(0x65)_(0x6C)_(0x6C)
            07     #define ___ _(0x6F)_(0x2C)_(0x20)_(0x77)_(0x6F)
            08     #define ____ _(0x72)_(0x6C)_(0x64)_(0x21)
            09     #define _____ __ ___ ____ _________
            10     #include<stdio.h>
            11     _____

             

            hello2.c  

            1     #include<stdio.h>
            2     main(){
            3       int x=0,y[14],*z=&y;*(z++)=0x48;*(z++)=y[x++]+0x1D;
            4       *(z++)=y[x++]+0x07;*(z++)=y[x++]+0x00;*(z++)=y[x++]+0x03;
            5       *(z++)=y[x++]-0x43;*(z++)=y[x++]-0x0C;*(z++)=y[x++]+0x57;
            6       *(z++)=y[x++]-0x08;*(z++)=y[x++]+0x03;*(z++)=y[x++]-0x06;
            7       *(z++)=y[x++]-0x08;*(z++)=y[x++]-0x43;*(z++)=y[x]-0x21;
            8       x=*(--z);while(y[x]!=NULL)putchar(y[x++]);
            9     }

            hello3.c

            01     #include<stdio.h>
            02     #define __(a) goto a;
            03     #define ___(a) putchar(a);
            04     #define _(a,b) ___(a) __(b);
            05     main()
            06     { _:__(t)a:_('r',g)b:_('$',p)
            07       c:_('l',f)d:_(' ',s)e:_('a',s)
            08       f:_('o',q)g:_('l',h)h:_('d',n)
            09       i:_('e',w)j:_('e',x)k:_('\n',z)
            10       l:_('H',l)m:_('X',i)n:_('!',k)
            11       o:_('z',q)p:_('q',b)q:_(',',d)
            12       r:_('i',l)s:_('w',v)t:_('H',j)
            13       u:_('a',a)v:_('o',a)w:_(')',k)
            14       x:_('l',c)y:_('\t',g)z:___(0x0)}

            hello4.c

            1     int n[]={0x48,
            2     0x65,0x6C,0x6C,
            3     0x6F,0x2C,0x20,
            4     0x77,0x6F,0x72,
            5     0x6C,0x64,0x21,
            6     0x0A,0x00},*m=n;
            7     main(n){putchar
            8     (*m)!='\0'?main
            9     (m++):exit(n++);}

            hello5.c

            01     main(){int i,n[]={(((1<<1)<<(1<<1)<<(1<<
            02     1)<<(1<<(1>>1)))+((1<<1)<<(1<<1))), (((1
            03     <<1)<<(1<<1)<<(1<<1)<<(1<<1))-((1<<1)<<(
            04     1<<1)<<(1<<1))+((1<<1)<<(1<<(1>>1)))+ (1
            05     <<(1>>1))),(((1<<1)<<(1<<1)<<(1<<1)<< (1
            06     <<1))-((1<<1)<<(1<<1)<<(1<<(1>>1)))- ((1
            07     <<1)<<(1<<(1>>1)))),(((1<<1)<<(1<<1)<<(1
            08     <<1)<<(1<<1))-((1<<1)<<(1<<1)<<(1<<(1>>1
            09     )))-((1<<1)<<(1<<(1>>1)))),(((1<<1)<< (1
            10     <<1)<<(1<<1)<<(1<<1))-((1<<1)<<(1<<1)<<(
            11     1<<(1>>1)))-(1<<(1>>1))),(((1<<1)<<(1<<1
            12     )<<(1<<1))+((1<<1)<<(1<<1)<<(1<<(1>>1)))
            13     -((1<<1)<<(1<<(1>>1)))),((1<<1)<< (1<<1)
            14     <<(1<<1)),(((1<<1)<<(1<<1)<<(1<<1)<<(1<<
            15     1))-((1<<1)<<(1<<1))-(1<<(1>>1))),(((1<<
            16     1)<<(1<<1)<<(1<<1)<<(1<<1))-((1<<1)<< (1
            17     <<1)<<(1<<(1>>1)))-(1<<(1>>1))), (((1<<1
            18     )<<(1<<1)<<(1<<1)<<(1<<1))- ((1<<1)<< (1
            19     <<1)<<(1<<(1>>1)))+(1<<1)), (((1<<1)<< (
            20     1<<1)<<(1<<1)<< (1<<1))-((1<<1)<< (1<<1)
            21     <<(1<<(1>>1)))-((1<<1) <<(1<< (1>>1)))),
            22     (((1<<1)<< (1<<1)<<(1<<1)<< (1<<1))- ((1
            23     <<1)<<(1<<1)<<(1<<1))+((1<<1)<< (1<<(1>>
            24     1)))), (((1<<1)<<(1<<1) <<(1<<1))+(1<<(1
            25     >>1))),(((1<<1)<<(1<<1))+((1<<1)<< (1<<(
            26     1>>1))) + (1<< (1>>1)))}; for(i=(1>>1);i
            27     <(((1<<1) <<(1<<1))+((1 <<1)<< (1<<(1>>1
            28     ))) + (1<<1)); i++) printf("%c",n[i]); }

            hello6.cpp

            下面的程序只能由C++的編譯器編譯(比如:g++)

            01     #include <stdio.h>
            02     #define _(_) putchar(_);
            03     int main(void){int i = 0;_(
            04     ++++++++++++++++++++++++++++
            05     ++++++++++++++++++++++++++++
            06     ++++++++++++++++++++++++++++
            07     ++++++++++++++++++++++++++++
            08     ++++++++++++++++++++++++++++
            09     ++++i)_(++++++++++++++++++++
            10     ++++++++++++++++++++++++++++
            11     ++++++++++i)_(++++++++++++++
            12     i)_(--++i)_(++++++i)_(------
            13     ----------------------------
            14     ----------------------------
            15     ----------------------------
            16     ----------------------------
            17     ----------------i)_(--------
            18     ----------------i)_(++++++++
            19     ++++++++++++++++++++++++++++
            20     ++++++++++++++++++++++++++++
            21     ++++++++++++++++++++++++++++
            22     ++++++++++++++++++++++++++++
            23     ++++++++++++++++++++++++++++
            24     ++++++++++++++++++++++++++i)
            25     _(----------------i)_(++++++
            26     i)_(------------i)_(--------
            27     --------i)_(----------------
            28     ----------------------------
            29     ----------------------------
            30     ----------------------------
            31     ----------------------------
            32     ------i)_(------------------
            33     ----------------------------
            34     i)return i;}


            from:
            http://coolshell.cn/?p=914

            posted on 2010-02-18 21:05 chatler 閱讀(244) 評論(0)  編輯 收藏 引用 所屬分類: C++_BASIS
            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            一本久久综合亚洲鲁鲁五月天| 亚洲va中文字幕无码久久| 国产一区二区三区久久| 99久久er这里只有精品18| 久久国产亚洲精品麻豆| 久久综合精品国产一区二区三区| 久久午夜夜伦鲁鲁片免费无码影视| 日韩久久久久久中文人妻| 久久狠狠色狠狠色综合| 久久99九九国产免费看小说| 成人资源影音先锋久久资源网| 亚洲AV伊人久久青青草原| 久久久久久九九99精品| 久久综合久久鬼色| 久久久中文字幕| 粉嫩小泬无遮挡久久久久久| 久久国产V一级毛多内射| 久久99精品久久久久久久不卡 | 久久综合久久自在自线精品自| 嫩草影院久久国产精品| 77777亚洲午夜久久多喷| 99精品久久久久久久婷婷| 人妻无码中文久久久久专区| 久久精品视频一| 亚洲Av无码国产情品久久| 日本精品久久久久中文字幕| 亚洲国产欧洲综合997久久| 久久国产亚洲精品| 欧美日韩久久中文字幕| 无码人妻久久一区二区三区蜜桃| 亚洲国产天堂久久综合网站| 国产精品岛国久久久久| 丰满少妇人妻久久久久久 | 国产99久久久国产精品~~牛 | 久久午夜福利电影| 99久久精品国产综合一区| 77777亚洲午夜久久多喷| 久久精品人成免费| 久久久久人妻精品一区二区三区| 一本久久知道综合久久| 无遮挡粉嫩小泬久久久久久久|