簡體   English   中英

丑陋的C ++代碼

[英]Ugly C++ code

我正在研究一個C ++ prettyprinter,並希望通過比較運行它之前和之后的代碼來顯示prettyprinter的結果。 有誰知道我在哪里可以找到一些丑陋的C ++代碼來運行prettypretty? 理想情況下,代碼將來自一些開源軟件。

任何編碼為GNU編碼標准的東西都會給你一種難以理解的縮進風格。 逐字例子:

 if (x < foo (y, z))
   haha = bar[4] + 5;
 else
   {
     while (z)
       {
         haha += foo (z, z);
         z--;
       }
     return ++x + bar ();
   }

如果你找不到一個好的丑陋代碼語料庫,你總是可以寫一個“代碼uglifier”,然后在一些普通的代碼上運行它。

例如:

  • 刪除所有無關緊要的空格
  • 刪除/插入隨機空格
  • 用不同數量的空格替換選項卡。

嘗試搜索“C ++混淆”,你應該能夠找到難以閱讀的C ++代碼。

另一個好的測試是采用普通的C ++代碼,看看它能將它重新格式化為不同的代碼格式標准。

不是C ++,但你有沒有看過國際混淆的C代碼競賽?

查看一些獲獎者代碼

這是針對eclipse C / C ++工具項目提交的錯誤列表 許多錯誤都與未正確格式化的代碼有關,因此您可以看到它們是如何處理的,甚至可以查看修復程序是否已解決。

你的prettyprinter可能是可配置的嗎? 然后它將能夠生成適合輸入的丑陋代碼。

查看Code Golf Stack Exchange站點上的“高爾夫C ++程序 他們被丑化以節省空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM