历史上最好的C语言

Written on 12 16, 2007 // 技术交流.
, , , ,

前言:1983年,在ACM图林奖颁奖大会上,杰出的计算机科学家、UNIX的鼻祖、C语言的创始人之一,图林大奖得主,Ken   Thompson,上台的第一句话便是:“我是一个程序员,在我的1040表上,我自豪地写上了我的职业。作为一个程序员,我的工作就是写程序。今天我将向大家提供一个我曾经写过的最精练的程序。”     

        突然想要重新搬起C语言,好好揣摩揣摩,实在人的记忆是有限的呀,时间长了忘了也难免

于是想要逛逛论坛,找些学习资料,无意中就发现了这段号称“历史上最好的C语言”。拿来坐看右看,怎么也看不出端倪,无奈只能放在VC++6.0上编译了一番看看到底好在哪里!

      看完,兴奋不已。这段程序简单至极,却一点也不简单。:)  

      它经典的并不是这段程序有多难,而是写这段程序的想象力。

       这世上没有做不到的,只有想不到的

       下面请看这段代码:

          #include   <stdio.h>  
  char   s[]   =   {  
  ‘\t’,  
  ‘0′,  
  ‘\n’,  
  ‘}’,  
  ‘;’,  
  ‘\n’,  
  ‘\n’,  
  ‘m’,  
  ‘a’,  
  ‘i’,  
  ‘n’,  
  ‘(’,  
  ‘)’,  
  ‘\n’,  
  ‘{’,  
  ‘\n’,  
  ‘\t’,  
  ‘i’,  
  ‘n’,  
  ‘t’,  
  ‘   ‘,  
  ‘i’,  
  ‘;’,  
  ‘\n’,  
  ‘\n’,  
  ‘\t’,  
  ‘p’,  
  ‘r’,  
  ‘i’,  
  ‘n’,  
  ‘t’,  
  ‘f’,  
  ‘(’,  
  ‘\”‘,  
  ‘c’,  
  ‘h’,  
  ‘a’,  
  ‘r’,  
  ‘   ‘,  
  ‘\\’,  
  ‘t’,  
  ’s’,  
  ‘[',  
  ']‘,  
  ‘   ‘,  
  ‘=’,  
  ‘   ‘,  
  ‘{’,  
  ‘\\’,  
  ‘n’,  
  ‘\”‘,  
  ‘)’,  
  ‘;’,  
  ‘\n’,  
  ‘\t’,  
  ‘f’,  
  ‘o’,  
  ‘r’,  
  ‘(’,  
  ‘i’,  
  ‘=’,  
  ‘0′,  
  ‘;’,  
  ’s’,  
  ‘[',  
  'i',  
  ']‘,  
  ‘;’,  
  ‘i’,  
  ‘+’,  
  ‘+’,  
  ‘)’,  
  ‘\n’,  
  ‘\t’,  
  ‘\t’,  
  ‘p’,  
  ‘r’,  
  ‘i’,  
  ‘n’,  
  ‘t’,  
  ‘f’,  
  ‘(’,  
  ‘\”‘,  
  ‘\\’,  
  ‘r’,  
  ‘%’,  
  ‘d’,  
  ‘,’,  
  ‘\\’,  
  ‘n’,  
  ‘\”‘,  
  ‘,’,  
  ’s’,  
  ‘[',  
  'i',  
  ']‘,  
  ‘)’,  
  ‘;’,  
  ‘\n’,  
  ‘\t’,  
  ‘p’,  
  ‘r’,  
  ‘i’,  
  ‘n’,  
  ‘t’,  
  ‘f’,  
  ‘(’,  
  ‘\”‘,  
  ‘%’,  
  ’s’,  
  ‘\”‘,  
  ‘,’,  
  ’s’,  
  ‘)’,  
  ‘;’,  
  ‘\n’,  
  ‘}’,  
  0  
  };  
   
  main()   {  
  int   i;  
   
                  printf(”char   \ts[]   =   {\n”);  
                  for(i=0;s[i];i++)  
                                  printf(”\r%d,\n”,s[i]);  
                  printf(”%s”,s);  
  }  

看完后有什么感想呢?

这个程序是一个自已复制自已的C语言程序

我是退化了,没能一眼看出来。不过想高手应该看得出来了。

         后记:这个程序第一版和它“生”下的第二版式本在变量s的声明上略有不同,但在功能上完全一致,第二个版本与其后代则在形式和功能上完全一致。这个程序可能是第一个用C语言制造的Trojan   horse。该程序由UNIX创始人,C语言作者之一的Ken   Thompson书写,并在图林大奖向世人展示,应是无人能敌。

Popularity: 18% [?]

This entry was posted on 星期日, 12月 16th, 2007 at 6:52 下午 and is filed under 技术交流. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

请您留下评论

You can say anything you want here, but remember that my blog is not for advertising of your organ-growth pills and porn sites, just don't SPAM!