让大家见识一下新一代分析源代码生成流程图的东东吧Duceland Designeer

导读:
  源代码有点复杂,只是形式不用在意执行意义,它只是展示大部分所有的语法点:循环及其break和continue、goto、分支、try...catch等等,应有尽有。
  int SocketAgent::DataReceiver(char *data)
  {
  SocketAgent *a;
  int ret=0,pos,len,count;
  int buff[1024];
  int *i_data=(int *)data;
  len=0 do{
  if(i_data[len]=='a')
  {
  while(i_data[len] && len<1024)
  {
  if(i_data[len]=='/r')
  {
  len++ continue }
  if(i_data[len]=='/n')
  break }
  }
  }while(len<1024);
  for(int i=0,pos=0,count=0i<1024i++)
  {
  if(i_data[i]!='q')
  buff[pos++]=i_data[i];
  if(i_data[i]=='b')
  {
  break }
  else count++ if(i_data[i]==T_ERROR)
  {
  goto _exit;
  }
  }
  try{
  if(len>=1024)
  throw("throw out");
  }catch(char *error)
  {
  ShowMessage(error);
  }
  switch(count)
  {
  case 1:
  ret=100 break case 2:
  ret=200 break default:
  ret=300 break }
  return ret;
  _exit:
  ret=1001 return ret;
  }
  再看看分析后的流程图
   让大家见识一下新一代分析源代码生成流程图的东东吧Duceland Designeer_第1张图片
  
  是不是比单纯看代码容易很多?

本文转自
http://www.cnblogs.com/yesry/archive/2008/02/07/1065852.html

你可能感兴趣的:(工具和软件)