C++ Here

新世代的
線上 C++ 編譯器。

一個開源、輕量但強大的線上 C++ 編譯器,專為競賽程式設計而生

C++ Here 線上編譯器以三筆測資執行 Hello World 程式

// 功能

功能齊全。
卻不臃腫。

瀏覽器,就是你的開發環境。

WebAssembly 技術

將 C++ 程式碼編譯為 WebAssembly,並直接在瀏覽器中執行 —— 快速,且沒有資源限制。

錯誤高亮提示

解析編譯器錯誤並標示在發生錯誤的確切行數 —— 清楚、可立即處理的診斷訊息,沒有多餘雜訊。

內建測資系統

定義、執行並並排比較多筆測資。依照競賽選手真正的工作方式而設計。

自動程式碼格式化

整合 Clang-format。一個快捷鍵就能保持一致的程式碼風格 —— 並支援多種風格預設。

多語言支援

完整支援英文與繁體中文,更多語言即將推出。歡迎到 Crowdin 協助翻譯!

程式碼補全

針對 STL 容器與演算法提供情境感知的建議 —— 更快地寫 C++,不打斷思緒。

任何螢幕,任何裝置

介面能無縫適應各種螢幕尺寸。在任何螢幕、任何裝置上都能使用,隨時隨地舒適地寫程式。

安全,從設計開始

Cloudflare Turnstile 阻擋機器人。每次編譯都在隔離、一次性的 Docker 容器中執行 —— 預設即安全。

一鍵分享

只要一個連結,就能分享你的程式碼、測資、輸入與結果 —— 即時完成,無需任何設定。

GitHub

開源、免費

審查它、Fork 它、發布它。MIT 授權。

// 瀏覽器擴充

一鍵匯入。
所有測資。

不再複製貼上

透過我們的擴充功能,直接從瀏覽器匯入測資。支援超過 100 個競賽程式平台。

// 數據

真實數據。
真實使用。

4.7K+

總編譯次數

168.7K+

編譯總行數

540.2 MB+

總編譯大小

2.1 hrs+

編譯總時長

// 常見問題

有疑問嗎?
這裡有解答。

是的。C++ Here 完全免費,沒有廣告、沒有付費方案,也沒有功能限制。完整原始碼以 MIT 授權公開在 GitHub 上。

不需要。不用下載任何東西,也不用註冊或登入。用任何現代瀏覽器打開編輯器,就能馬上開始寫 C++。

你可以在編輯器的版本選單中選擇 C++98、C++14、C++17、C++20 或 C++23,預設為 C++17。

可以。雖然 Clang 原本不提供 bits/stdc++.h,在 C++ Here 上一樣能用。它已針對每個 C++ 版本預先編譯,所以開頭寫 #include <bits/stdc++.h> 的程式,編譯速度會快 2 到 3 倍。

把輸入內容填進測資即可。cin、scanf、getline 等標準輸入函式會從測資讀取,就跟在線上評測系統(Online Judge)上從 stdin 讀取一樣。你可以新增任意數量的測資,並一次全部運行。

適合,它就是為此而設計的。多筆測資、可調整的時間限制、bits/stdc++.h 支援,以及一個快捷鍵就能格式化,都符合你在 Codeforces、AtCoder、CSES 等線上評測系統解題的習慣,而且不用在本機設定 IDE。

每次運行預設有 10 秒的時間限制,可以在設定中調整或關閉。程式最多可使用 512 MB 記憶體(其中堆疊 8 MB),輸出上限為 32 MB。編譯本身超過 30 秒會逾時。

可以。編輯器會自動適應各種螢幕尺寸,你可以在 iPhone、iPad、Android 手機、Chromebook,或任何有現代瀏覽器的裝置上撰寫和運行 C++。

會。你的程式碼、測資和設定會自動儲存在瀏覽器的本機儲存空間,下次回來時都還在。不過這些資料只存在這台裝置的這個瀏覽器上,重要的程式碼請另外備份。

可以。點選「分享」就會產生一個連結,內容包含你的程式碼、測資、輸入和輸出。任何人打開連結,看到的都會跟你看到的一模一樣,很適合用來求助或講解解法。

打開編輯器,撰寫或貼上程式碼,在測資中填入輸入,然後按 Ctrl + Enter(macOS 為 ⌘ + Enter)。程式碼會被編譯成 WebAssembly,幾秒內輸出就會顯示在測資旁邊。

瀏覽器擴充功能即將推出,只要一鍵,就能從 Codeforces、AtCoder、CSES 等超過 100 個競賽程式平台匯入範例測資。

大多數線上編譯器會在共用的伺服器上執行你的程式,你得排隊等待。C++ Here 只在伺服器上編譯,再於你自己的裝置上執行 WebAssembly 程式,所以執行速度不受伺服器負載影響。最近的編譯結果也會被快取,再次運行相同的程式碼時會跳過編譯。

安全。編譯在隔離、一次性且無法連網的 Docker 容器中進行,之後程式在瀏覽器的 WebAssembly 沙盒中執行,無法存取你的檔案或系統。Cloudflare Turnstile 則負責阻擋機器人。

按 Shift + Alt + F(macOS 為 Shift + Option + F)即可用 clang-format 格式化程式碼。你可以在設定中選擇 LLVM、Google、Chromium、Mozilla、WebKit、Microsoft 或 GNU 格式化風格,並調整 Tab 寬度。

C++ Here 使用 Emscripten 編譯你的程式碼。Emscripten 以 Clang 和 LLVM 為基礎,並使用 libc++ 標準函式庫,編譯結果是在瀏覽器中執行的 WebAssembly 程式。

C++ Here 目前支援英文和繁體中文,更多語言即將推出。任何人都可以到 Crowdin 協助翻譯。

C++ Here 是一個免費、開源的線上 C++ 編譯器與編輯器,專為競賽程式設計打造。你可以在瀏覽器中撰寫 C++、編譯成 WebAssembly,並用自己的測資運行,同時內建錯誤高亮、程式碼格式化和自動補全。

// 讓我們開始吧

不再切換工具。 你需要的,都在這裡。

無需安裝、無需登入。
打開分頁,直接拿 AC。