SourceFormatX

軟體簡介

主要功能

為什麼要使用

源碼美化演示

整合和插件

界面預覽

常見問題

升級歷史

所獲獎項

用戶評價

許可協議

CodeToHtml

C原始碼美化效果演示

現在購買
下載試用

原始碼美化工具功能

SourceFormatX 使用強大的C詞法解析引擎全面地分析您的原始碼並根據用戶自定義的C語言原始碼風格重構和美化C原始碼檔案,因此它能精細地根據不同的原始碼風格美化多種原始碼,甚至是下面這些極度混亂的原始碼:

C/C++ Java C# Delphi (Pascal)
PHP JSP ASP JavaScript
Visual Basic VB.NET VBScript HTML Components
80x86 ASM 8051 ASM CORBA IDL


  C原始碼美化範例:     範例1   |   範例2   |   範例3   |   範例4   |   範例5

這段C語言原始碼同樣也來自于 IOCCC,原始碼被排列成3個字母: CRC,這份混亂到無法閱讀的C原始碼檔案在1秒種內即被 SourceFormatX 程式碼美化工具 美化和縮排成整潔且可讀性強的美觀風格樣式。

    /* 原始碼美化之前的C語言原始碼 */

   #include <stdio.h>
   #include <stdlib.h>

   int main(int a,char     **A){FILE*B;typedef     unsigned long C;C b
   [8]; if(!(a==7&&(B=     fopen(1[A],"rb"))))     return 1;for(7[b]=0
   ;7[b]<5;7[b]++)b[7[     b]]=strtoul(A[2+7[b     ]],0,16-!7[b]*6);5[
   b]=3[b]                 ; while     ((6[b]=     getc(B)
   )!=(C)-                 1){if(2     [b])for     (7[b]=0
   ;7[b]<4                 ;7[b]++     )if(((6     [b]>>7[
   b])^(6[                 b]>>(7-7[b])))&1)6[     b] ^=(1
   <<7[b])                 ^(1<<(7-7[b]));5[b]     ^= 6[b]
   <<(0[b]                 -8);for(7[b]=0;7[b]     <8;7[b]
   ++)if((                 5[b]>>(0[b]-            1))&1)5
   [b]=(5[                 b]<<1)^ 1[b];           else 5[
   b]<<=1;                 }5[b]&=((((C)1          <<(0[b]
   -1))-1)                 <<1)|1; if(2[b]         )for(7[
   b]=0;7[                 b]<(0[b  ]>>1);7        [b] ++)
   if(((5[b]>>7[b])^(5     [b]>>(0   [b]-1-7       [b])))&1)5[b]^=((C)
   1<<7[b])^((C)1<<(0[     b]-1-7[    b]));5[      b]^=4[b];fclose(B);
   printf("%0*lX\n", (     int)(0[     b]+3)>>     2,5[b]); return 0;}

   /* 原始碼美化之後的C語言原始碼 */

   #include <stdio.h>
   #include <stdlib.h>

   int main(int a, char** A)
   {
     FILE* B;
     typedef unsigned long C;
     C b[8];
     if (!(a == 7 && (B = fopen(1[A], "rb"))))
       return 1;
     for (7[b] = 0; 7[b] < 5; 7[b]++)
       b[7[b]] = strtoul(A[2 + 7[b]], 0, 16 - !7[b]* 6);
     5[b] = 3[b];
     while ((6[b] = getc(B)) != (C) - 1)
     {
       if (2[b])
         for (7[b] = 0; 7[b] < 4; 7[b]++)
           if (((6[b] >> 7[b]) ^ (6[b] >> (7 - 7[b]))) & 1)
             6[b] ^= (1 << 7[b]) ^ (1 << (7 - 7[b]));
       5[b] ^= 6[b] << (0[b] - 8);
       for (7[b] = 0; 7[b] < 8; 7[b]++)
         if ((5[b] >> (0[b] - 1)) & 1)
           5[b] = (5[b] << 1) ^ 1[b];
         else
           5[b] <<= 1;
     }
     5[b] &= ((((C)1 << (0[b] - 1)) - 1) << 1) | 1;
     if (2[b])
       for (7[b] = 0; 7[b] < (0[b] >> 1); 7[b]++)
         if (((5[b] >> 7[b]) ^ (5[b] >> (0[b] - 1 - 7[b]))) & 1)
           5[b] ^= ((C)1 << 7[b]) ^ ((C)1 << (0[b] - 1 - 7[b]));
     5[b] ^= 4[b];
     fclose(B);
     printf("%0*lX\n", (int)(0[b] + 3) >> 2, 5[b]);
     return 0;
   }

範例1   |   範例2   |   範例3   |   範例4   |   範例5