首頁 > 後端開發 > C++ > 您能勝過這個整數到字串的轉換程式碼嗎?

您能勝過這個整數到字串的轉換程式碼嗎?

Linda Hamilton
發布: 2024-12-07 02:36:15
原創
206 人瀏覽過

Can You Outperform This Integer-to-String Conversion Code?

誰能超越我的整數到 std::string 轉換程式碼的效能?

問題:

高效轉換將整數轉換為 std::string 是一個挑戰,引發了各種方法的創建。本文探討了不同的方法並邀請提交來比較其性能。

方法:

常見方法包括:

  • 「C 方式」:使用stringstream。
  • sprintf:通常建議提高效能。
  • Boost 的 lexical_cast:有自己的實現,不依賴 stringstream。
  • Ben 的演算法:針對兩個桌面進行了最佳化和嵌入式系統。
  • ltoa(非標準):廣泛可用,但其使用可能受到限制。

規則:

提交內容應遵守特定要求指南:

  • 將有符號和無符號32 位元整數轉換為小數。
  • 以 std::string 形式產生輸出。
  • 確保與執行緒和訊號的相容性.
  • 假設一個 ASCII 字元集。
  • 處理在二進位補碼機器上正確顯示 INT_MIN。
  • 輸出應與使用字串流的規格 C 版本相同。
  • 在 VC 2010 和 g 上編譯並執行。

結果:

獲勝者提交的內容顯示出顯著的效能改進:

  • Eugene Smith 的程式碼:比g 上的sprintf 快8 倍(http://ideone.com/0uhhX)
  • Timo 的程式碼:比g 上的sprintf 快8 倍
Timo 的程式碼:比Visual C 上的sprintf (http:// ideone.com/VpKO3)

以上是您能勝過這個整數到字串的轉換程式碼嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板