您的位置:首页 > 职场人生

程序员的进化——从学生到首席执行官

2010-02-26 13:35 302 查看
实在是搞笑  不过那个大师级的对偶来说也忒难了 --

 

2009年3月14日 

高中时期 

view plaincopy to clipboardprint? 

10 PRINT "HELLO WORLD" 
20 END  
大学新生 

view plaincopy to clipboardprint? 

program Hello(input, output)   
begin 
writeln(/'Hello World/')   
end.  
高年级大学生 

view plaincopy to clipboardprint? 

#include <stdio.h> 

int main(void)   
{   
   printf("Hello, world!//n");   
return 0;   
}   
</stdio.h>  
职业新手 

view plaincopy to clipboardprint? 

#include <stdio.h> 
void main(void)   
{   
char *message[] = {"Hello ", "World"};   
int i;   

for(i = 0; i < 2; ++i)   
    printf("%s", message[i]);   
  printf("//n");   
}   
stdio.h>  
职业老手 

view plaincopy to clipboardprint? 

#include <iostream> 
#include <string> 
using namespace std;   

class string   
{   
private:   
int size;   
char *ptr;   

string() : size(0), ptr(new char[1]) { ptr[0] = 0; }   

   string(const string &s) : size(s.size)   
   {   
     ptr = new char[size + 1];   
     strcpy(ptr, s.ptr);   
   }   

   ~string()   
   {   
delete [] ptr;   
   }   

friend ostream &operator <<(ostream &, const string &);   
   string &operator=(const char *);   
};   

ostream &operator<<(ostream &stream, const string &s)   
{   
return(stream << s.ptr);   
}   

string &string::operator=(const char *chrs)   
{   
if (this != &chrs)   
   {   
delete [] ptr;   
    size = strlen(chrs);   
     ptr = new char[size + 1];   
     strcpy(ptr, chrs);   
   }   
return(*this);   
}   

int main()   
{   
   string str;   

   str = "Hello World";   
   cout << str << endl;   

return(0);   
}   
/string></iostream>  
大师级 

view plaincopy to clipboardprint? 

  [   
uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)   
  ]   
  library LHello   
  {   
// bring in the master library 
      importlib("actimp.tlb");   
      importlib("actexp.tlb");   

// bring in my interfaces 
      #include "pshlo.idl" 

      [   
uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)   
      ]   
      cotype THello   
   {   
   interface IHello;   
   interface IPersistFile;   
   };   
  };   

  [   
  exe,   
uuid(2573F890-CFEE-101A-9A9F-00AA00342820)   
  ]   
  module CHelloLib   
  {   

// some code related header files 
      importheader(<windows.h>);   
      importheader(   
<ole2.h>);   
      importheader(<except.hxx>);   
      importheader("pshlo.h");   
      importheader("shlo.hxx");   
      importheader("mycls.hxx");   

// needed typelibs 
      importlib("actimp.tlb");   
      importlib("actexp.tlb");   
      importlib("thlo.tlb");   

      [   
uuid(2573F891-CFEE-101A-9A9F-00AA00342820),   
      aggregatable   
      ]   
      coclass CHello   
   {   
   cotype THello;   
   };   
  };   

  #include "ipfix.hxx" 

extern HANDLE hEvent;   

class CHello : public CHelloBase   
  {   
public:   
      IPFIX(CLSID_CHello);   

      CHello(IUnknown *pUnk);   
      ~CHello();   

HRESULT  __stdcall PrintSz(LPWSTR pwszString);   

private:   
static int cObjRef;   
  };   

  #include <windows.h> 
  #include 
<ole2.h>   
  #include <stdio.h> 
  #include <stdlib.h> 
  #include "thlo.h" 
  #include "pshlo.h" 
  #include "shlo.hxx" 
  #include "mycls.hxx" 

int CHello::cObjRef = 0;   

  CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)   
  {   
      cObjRef++;   
return;   
  }   

HRESULT  __stdcall  CHello::PrintSz(LPWSTR pwszString)   
  {   
      printf("%ws 
", pwszString);   
return(ResultFromScode(S_OK));   
  }   

  CHello::~CHello(void)   
  {   

// when the object count goes to zero, stop the server 
  cObjRef--;   
if( cObjRef == 0 )   
      PulseEvent(hEvent);   

return;   
  }   

  #include <windows.h> 
  #include 
<ole2.h>   
  #include "pshlo.h" 
  #include "shlo.hxx" 
  #include "mycls.hxx" 

HANDLE hEvent;   

int _cdecl main(   
int argc,   
char * argv[]   
  ) {   
ULONG ulRef;   
DWORD dwRegistration;   
  CHelloCF *pCF = new CHelloCF();   

  hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);   

// Initialize the OLE libraries 
  CoInitializeEx(NULL, COINIT_MULTITHREADED);   

  CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,   
      REGCLS_MULTIPLEUSE, &dwRegistration);   

// wait on an event to stop 
  WaitForSingleObject(hEvent, INFINITE);   

// revoke and release the class object 
  CoRevokeClassObject(dwRegistration);   
  ulRef = pCF->Release();   

// Tell OLE we are going away. 
  CoUninitialize();   

return(0); }   

extern CLSID CLSID_CHello;   
extern UUID LIBID_CHelloLib;   

  CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */ 
      0x2573F891,   
      0xCFEE,   
      0x101A,   
      { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }   
  };   

  UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */ 
      0x2573F890,   
      0xCFEE,   
      0x101A,   
      { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }   
  };   

  #include <windows.h> 
  #include 
<ole2.h>   
  #include <stdlib.h> 
  #include <string.h> 
  #include <stdio.h> 
  #include "pshlo.h" 
  #include "shlo.hxx" 
  #include "clsid.h" 

int _cdecl main(   
int argc,   
char * argv[]   
  ) {   
HRESULT  hRslt;   
  IHello        *pHello;   
ULONG  ulCnt;   
  IMoniker * pmk;   
WCHAR  wcsT[_MAX_PATH];   
WCHAR  wcsPath[2 * _MAX_PATH];   

// get object path 
  wcsPath[0] = /'//0/'; 
  wcsT[0] = /'//0/';   
if( argc > 1) {   
      mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);   
      wcsupr(wcsPath);   
      }   
else {   
      fprintf(stderr, "Object path must be specified//n");   
return(1);   
      }   

// get print string 
if(argc > 2)   
      mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);   
else 
      wcscpy(wcsT, L"Hello World");   

  printf("Linking to object %ws//n", wcsPath);   
  printf("Text String %ws//n", wcsT);   

// Initialize the OLE libraries 
  hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);   

if(SUCCEEDED(hRslt)) {   

      hRslt = CreateFileMoniker(wcsPath, &pmk);   
if(SUCCEEDED(hRslt))   
   hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);   

if(SUCCEEDED(hRslt)) {   

// print a string out 
   pHello->PrintSz(wcsT);   

   Sleep(2000);   
   ulCnt = pHello->Release();   
   }   
else 
   printf("Failure to connect, status: %lx", hRslt);   

// Tell OLE we are going away. 
      CoUninitialize();   
      }   

return(0);   
  }   
</stdio.h></string.h></stdlib.h></ole2.h></windows.h></ole2.h></windows.h></stdlib.h></stdio.h></ole2.h></windows.h></except.hxx></ole2.h></windows.h>  
黑客学徒

  #!/usr/local/bin/perl
  $msg="Hello, world.//n";
  if ($#ARGV >= 0) {
    while(defined($arg=shift(@ARGV))) {
      $outfilename = $arg;
      open(FILE, ">" . $outfilename) || die "Can/'t write $arg: $!//n";
      print (FILE $msg);
      close(FILE) || die "Can/'t close $arg: $!//n";
    }
  } else {
    print ($msg);
  }
  1;

有经验的黑客 

view plaincopy to clipboardprint? 

#include <stdio.h> 
#define S "Hello, World//n" 
main(){exit(printf(S) == strlen(S) ? 0 : 1);}   
stdio.h>  
老练的黑客

  % cc -o a.out ~/src/misc/hw/hw.c
  % a.out

超级黑客

  % echo "Hello, world."

一线经理 

view plaincopy to clipboardprint? 

10 PRINT "HELLO WORLD" 
20 END  
中层经理

  mail -s "Hello, world." bob@b12
  Bob, could you please write me a program that prints "Hello, world."?
  I need it by tomorrow.
  ^D

高级经理

  % zmail jim
  I need a "Hello, world." program by this afternoon.

首席执行官

  % letter
  letter: Command not found.
  % mail
  To: ^X ^F ^C
  % help mail
  help: Command not found.
  % damn!
  !: Event unrecognized
  % logout

来源:未知 

关于更多的“hello world”请参看:《Hello World 集中营》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: