有哪些適合編寫 C / C++ 的軟體?
codeblocks
clion 加 ideavim 或者 vs 加 resharper 加 vsvim
Window環境:Dev-Cpp。
作為退役OI狗一定對Dev情有獨鍾。官方版本雖停留在了4.9.9.2,但如今Dev-Cpp愛好者仍在http://sf.net上頻繁更新最新版本。個人建議使用5.4之後的版本,耳目一新~
簡潔,易用,美觀,小巧。
PS:獨愛Obsidian語法高亮配色,有同道中人木~
Linux環境:CodeBlocks。
作為現役ACM狗一定對CB情有獨鍾。無他,ACM官方推薦IDE。
Mac環境:XCode。
作為幫主粉一定對XCode情有獨鍾。功能強大又不失美觀,XCode配Mac猶如牛郎配織女。無他,Just Apple.看到問題里有ACM標籤…官方比賽要求是CodeBlocks比較多,沒得選。
:Visual Studio 是 Windows 下最好的 IDE。
推薦一個我自己用的,Sublime Text 3(Sublime Text: The text editor you"ll fall in love with),這是一個純編輯器。但是可以非常和諧輕鬆地調用終端命令,所以可以輕鬆,同時適配各多種編譯器。同時還是跨 Windows, Linux, OSX 三大平台的。
---
首先,快捷鍵非常強大,游標切換,跨文件追蹤函數,多級摺疊,等等。而且快捷鍵可以自定義,怎麼習慣怎麼來。
然後是顏色!換主題簡直太方便了 w
只要一個切換,顏色、背景、語法高亮都可以全套替換~還可以通過配置文件隨意設置出自己的主題,為自己喜歡的任何單詞單獨設置不同的高亮!接著是編譯設置!調整編譯選項不用找菜單,只要按模板建立一個對應語言的文件,編譯參數就可以隨便設置了,下次就可以一鍵編譯運行~還可以同時設置多種編譯命令,分別用不同的參數,之後可以一鍵在這些設置間輕鬆切換。
( 比如切切切出現一道題用 java 比較方便,只要直接寫上 java 代碼然後一鍵 - 會自動判斷 - 使用 java 的編譯命令,出結果。
接下來是 snippet !
snippet 是一段預先設置好的代碼塊,只需要輸入預先設置的幾個單詞,就可以自動補全任意長度的整個代碼塊!而且 snippet 會自動判斷文件類型,只在指定的語言中生效。更出色的是,這段代碼塊是可編程的,比如代碼塊的文件名部分,可以直接填寫內置的文件名宏,每次就會根據當前文件名生成。如果是大段代碼,還可以設置其中的游標出現的順序,只要連按幾次 tab 就可以在預設的游標位置切換,填入需要變化的值。
對於經常寫(da)單(mu)文(ban)件同時不斷追求效率和速度的acmer來說真是太方便了…
甚至還支持同時操作多個游標,支持可視化塊操作。
可以直接打開圖片。
---
build3083版本的用戶設置都在 User 文件夾里,便攜性滿分。只要複製這一個小文件夾到新的環境,所有的設置都回來了。而且所有的插件,主題,都會自動在後台下載。很快就能還原出一個熟悉的sublime~~
還記得上面說到,Sublime Text 是跨平台的嗎?甚至是不同系統,只要一個 User 文件夾拷過去,就可以直接開始工作了 w感謝 sublime 。標籤里有ACM,那還是推薦code::block吧
Qt Creator
好用的話,看你怎麼定義了。既然題主這麼問,就默認題主是剛剛入門。
如果是初學者,比較建議:codeblocks(把設置裡頭自動補齊各選項調好),簡單易用,debug比VC和devC都簡單一點。本科很多學校都要求從VC起步,如果題主有能力,甚至可以直接上VS。VS用上手了可以試試學一下C#,一些本科課程設計使用C#應該是很方便完成的。
如果ACMer的話,資深ACMer一個編輯器就足夠了吧(小黑一把,勿噴(⊙﹏⊙))
使用一些諸如openCV, openGL庫的話,做一些相對大一點的項目,也比較推薦VS或者VC。一些拖拽式功能和VS提供的強大debug讓人流連忘返。
以上純屬個人意見,請知友留情~打acm哪裡要什麼vs。
codeblocks屬於入門級別,gedit屬於進階版,vim或emacs+gcc+gdb+gprof才是王道。
terminal大法好。clion_(:з」∠)_,如果你電腦內存足夠的話
看了ACM的標籤,只給你推薦code blocks和vim
sublime +. G++就好了
為什麼沒人推薦sublime+g++
Windows上用Visual Studio,Linux上用Clang
反正看起來你也剛入門,用clang和vim就行了
emacs emacs emacs,哈哈哈哈,用了emacs後,你會忘了自己本來想做什麼來著
1. clang + vim2. vs 2013 community
歡迎入 Emacs 巨坑。
推薦閱讀:
※Win10 總有一個好像命令行窗口的彈窗一閃而過,怎麼找到到底是什麼問題?
※n個球放入m個盒子,使用程序輸出所有的放法?
※為什麼電腦正在運行的文件無法刪除?
※C++中如何把一個變數的值作為另一個變數的名?