調試快捷鍵
F6: 生成解決方案
Ctrl+F6: 生成目前項目
F7: 檢視代碼
Shift+F7: 檢視窗體設計器
F5: 啟動調試
Ctrl+F5: 開始執行(不調試)
Shift+F5: 停止調試
Ctrl+Shift+F5: 重新開機調試
F9: 切換斷點
Ctrl+F9: 啟用/停止斷點
Ctrl+Shift+F9: 删除全部斷點
F10: 逐過程
Ctrl+F10: 運作到光标處
F11: 逐語句
編輯快捷鍵
Shift+Alt+Enter: 切換全屏編輯
Ctrl+B,T / Ctrl+K,K: 切換書簽開關
Ctrl+B,N / Ctrl+K,N: 移動到下一書簽
Ctrl+B,P: 移動到上一書簽
Ctrl+B,C: 清除全部标簽
Ctrl+I: 漸進式搜尋
Ctrl+Shift+I: 反向漸進式搜尋
Ctrl+F: 查找
Ctrl+Shift+F: 在檔案中查找
F3: 查找下一個
Shift+F3: 查找上一個
Ctrl+H: 替換
Ctrl+Shift+H: 在檔案中替換
Alt+F12: 查找符号(列出所有查找結果)
Ctrl+Shift+V: 剪貼闆循環
Ctrl+左右箭頭鍵: 一次可以移動一個單詞
Ctrl+上下箭頭鍵: 滾動代碼螢幕,但不移動光标位置。
Ctrl+Shift+L: 删除目前行
Ctrl+M,M: 隐藏或展開目前嵌套的折疊狀态
Ctrl+M,L: 将所有過程設定為相同的隐藏或展開狀态
Ctrl+M,P: 停止大綱顯示
Ctrl+E,S: 檢視空白
Ctrl+E,W: 自動換行
Ctrl+G: 轉到指定行
Shift+Alt+箭頭鍵: 選擇矩形文本
Alt+滑鼠左按鈕: 選擇矩形文本
Ctrl+Shift+U: 全部變為大寫
Ctrl+U: 全部變為小寫
代碼快捷鍵
Ctrl+J / Ctrl+K,L: 列出成員
Ctrl+Shift+空格鍵 / Ctrl+K,P: 參數資訊
Ctrl+K,I: 快速資訊
Ctrl+E,C / Ctrl+K,C: 注釋標明内容
Ctrl+E,U / Ctrl+K,U: 取消標明注釋内容
Ctrl+K,M: 生成方法存根
Ctrl+K,X: 插入代碼段
Ctrl+K,S: 插入外側代碼
F12: 轉到所調用過程或變量的定義
視窗快捷鍵
Ctrl+W,W: 浏覽器視窗
Ctrl+W,S: 解決方案管理器
Ctrl+W,C: 類視圖
Ctrl+W,E: 錯誤清單
Ctrl+W,O: 輸出視圖
Ctrl+W,P: 屬性視窗
Ctrl+W,T: 任務清單
Ctrl+W,X: 工具箱
Ctrl+W,B: 書簽視窗
Ctrl+W,U: 文檔大綱
Ctrl+D,B: 斷點視窗
Ctrl+D,I: 即時視窗
Ctrl+Tab: 活動窗體切換
Ctrl+Shift+N: 建立項目
Ctrl+Shift+O: 打開項目
Ctrl+Shift+S: 全部儲存
Shift+Alt+C: 建立類
Ctrl+Shift+A: 建立項
VC6
F2 書簽功能: Ctrl+F2 --在某行設定一個書簽(再按一次次是取消)
F2 --跳到下一個書簽位置
Shift+F2 --跳到上一個書簽位置
Ctrl+Shift+F2 --删除所有書簽
F3 查找: Ctrl+F3 --在檔案中查找,如果目前光标在一個字元串上,
那麼自動查找此字元串.相似的有Ctrl+F
F3 --查找檔案中下一個串
Shift+F3 --查找檔案中上一個串
F4(不是流行花園那個) 如果是編譯後或者Find in Files後,可以逐條定位.
Ctrl+F4 --關閉檔案
Alt+F4 --關閉VC(跟WINDOWS定義的一樣)
F5編譯并執行 F5 --編譯并通過VC執行
Ctrl+F5 --不經過VC,直接執行編譯後的exe
Shift+F5 --F5運作後,直接從VC中停止程式(可以模拟當機情況)
Ctrl+Shift+F5 --重新開始運作
F6切換視窗 SplitWindow後,可以轉換光标所在的視窗
F7編譯 F7 編譯工程
Ctrl+F7 編譯目前檔案
Alt+F7 工程設定對話框
F8選擇的粘滞鍵 其實更常用的是按住Shift+方向鍵
Alt+F8 選中的代碼書寫格式對齊
F9設定斷點 Ctrl+F9删除所有斷點
Alt+F9 顯示編輯斷點的對話框
Ctrl+F9斷點無效
F10單步執行(Debug時)
Ctrl+F10 執行到光标所在行
(試試看Shift+F10什麼效果)
F11跟蹤時進入函數内部
Shift+F11跳到上一層調用棧
F12跳到函數定義初(需要帶Browse Info選項編譯,建議不選,生成檔案很大)
編輯常用
Ctrl+W 顯示ClassWizard,邊界面程式用的比較多
Ctrl+Z/Ctrl+Y Undo/Redo
Ctrl+U 字母轉化為小寫(有的VC沒有設定)
Ctrl+Shift+U 字母轉化為大寫(有的VC沒有設定)
Ctrl+S 儲存(強烈建議編碼時經常按兩下,省得掉電當機時後悔,呵呵,
該鍵在多數編輯軟體都适用)
Ctrl+D 查找(嗯,如果有SOFTICE,那麼就是呼叫它了)
Ctrl+F 正宗的查找快捷鍵
Ctrl+G 跳到檔案中第n行
Ctrl+Shift+G 光标在一個檔案名上,直接跳到指定檔案
Ctrl+H 替換
Ctrl+J,K #ifdef...#endif查找配對
Ctrl+L 剪切一行
Ctrl+} 比對括号(),{}
調試常用
Shift+F9 QuickWatch,并顯示關标所在處的變量值
Alt+3 Watch 檢視視窗
Alt+4 Variables 監視變量(常用)
Alt+5 顯示寄存器
Alt+6 顯示記憶體(常用)
Alt+7 顯示堆棧情況(當機了多看看)
Alt+8 顯示彙編碼
還有一些常用的
Ctrl+TAB 切換打開的檔案視圖,(如果按住Ctrl,順序向後切換)
Ctrl+Shift+TAB切換打開的檔案視圖,(如果按住Ctrl,順序向前切換)
TAB 選中後,整體後移一個制表符,
Shift+TAB 選中後,整體前移一個制表符,
Alt+0 将焦點移到工作區(ESC回編輯區)
Alt+2 将焦點移到輸出區(ESC回編輯區)
Ctrl+PgUp 逆序切換工作區視圖
Ctrl+PgDn 順序切換工作區視圖
另外,VC沒有設定打開,關閉工作區,和打開關閉輸出區的快捷鍵,如果覺得不友善,
可以自己注冊(我設定的是 Ctrl+,和Ctrl+/).注冊在Tools => Customize => KeyBoard
F1: 幫助
Ctrl+O :Open
Ctrl+P :Print
Ctrl+N :New
Ctrl+Shift+F2 :清除所有書簽
F2 :上一個書簽
Shift+F2 :上一個書簽
Alt+F2 :編輯書簽
Ctrl+F2 :添加/删除一個書簽
F12 :Goto definition
Shift+F12 :Goto reference
Ctrl+'Num+' :Displays the next symbol definition or reference
Ctrl+'Num-' :Displays the previous symbol definition or reference
Ctrl+J/K :尋找上一個/下一個預編譯條件
Ctrl+Shift+J/K :尋找上一個/下一個預編譯條件并将這一塊標明
Ctrl+End :文檔尾
Ctrl+Shift+End :標明從目前位置到文檔尾
Ctrl+Home :文檔頭
Ctrl+Shift+Home :標明從目前位置到文檔頭
Ctrl+B/Alt+F9 :編輯斷點
Alt+F3/Ctrl+F :查找
F3 :查找下一個
Shift+F3 :查找上一個
Ctrl+]/Ctrl+E :尋找下一半括弧
Ctrl+Shift+] :尋找下一半括弧并標明括弧之間的部分(包括括弧)
Ctrl+Shift+E :尋找下一半括弧并標明括弧之間的部分(包括括弧)
F4 :尋找下一個錯誤/警告位置
Shift+F4 :尋找上一個錯誤/警告位置
Shift+Home :標明從目前位置到行首
Shift+End :標明從目前位置到行尾
Ctrl+L :剪切目前行
Ctrl+Shift+L :删除目前行
Alt+Shift+T :交換目前行和上一行
Ctrl+Alt+T :Brings up the completion list box
Shift+PageDown :標明從目前位置到下一頁目前位置
Shift+PageUp :標明從目前位置到上一頁目前位置
Ctrl+Shift+Space:顯示函數參數的Tooltip
Ctrl+Z/Alt+Backspace :Undo
Ctrl+Shift+Z/Ctrl+Y :Redo
F8 :目前位置變成標明區域的頭/尾(再移動光标或者點滑鼠就會標明)
Ctrl+Shift+F8 :目前位置變成矩形標明區域的頭/尾(再移動光标或者點滑鼠就會標明)
Alt+F8 :自動格式重排
Ctrl+G :Goto
Ctlr+X/Shift+Del:Cut
Ctrl+C/Ctrl+Ins :Copy
Ctrl+V/Shift+Ins:Paste
Ctrl+U :将標明區域轉換成小寫
Ctrl+Shift+U :将標明區域轉換成大寫
Ctrl+F8 :目前行變成標明區域的頭/尾(再移動上下光标或者點滑鼠就會標明多行)
Ctrl+Shift+L :删除從目前位置到行尾
Ctrl+Shift+8 :将所有Tab變成`或者還原
Ctrl+T :顯示變量類型
Ctrl+↑ :向上滾屏
Ctrl+↓ :向下滾屏
Ctrl+Del :删除目前單詞的後半截(以光标為分割)
Ctrl+Backspace :删除目前單詞的前半截(以光标為分割)
Ctrl+← :移到前一個單詞
Ctrl+→ :移到後一個單詞
Ctrl+Shift+← :標明目前位置到前一個單詞
Ctrl+Shift+→ :標明目前位置到後一個單詞
Ctrl+Shift+T :将本單詞和上一個單詞互換
1.檢測程式中的括号是否比對
把光标移動到需要檢測的括号(如大括号{}、方括号[]、圓括号()和尖括号<>)前面,鍵入快捷鍵“Ctrl+]”。如果括号比對正确,光标就跳到比對的括号處,否則光标不移動,并且機箱喇叭還會發出一聲警告聲。
2.檢視一個宏(或變量、函數)的宏定義
把光标移動到你想知道的一個宏上,就比如說最常見的DECLARE_MAP_MESSAGE上按一下F12(或右鍵菜單中的Go To Defition Of …),如果沒有建立Browse files,會出現提示對話框,确定,然後就會跳到定義那些東西的地方。
相當可喜的是,它也可以看到Microsoft定義的系統宏,非常good.
3.格式化一段亂七八糟的源代碼
選中那段源代碼,按ATL+F8。
4.在編輯狀态下發現成員變量或函數不能顯示
删除該項目擴充名為.ncb檔案,重新打開該項目。
5.如何整理ClassView視圖中大量的類
可以在classview 視圖中右鍵建立檔案夾(new folder),再把具有相近性質的類拖到對應的檔案夾中,使整個視圖看上去清晰明了.
6.定位預處理指定
在源檔案中定位光标到對稱的#if, #endif,使用Ctrl+K.
7.如何添加系統中Lib到目前項目
在Project | Settings | Link | Object/library modules:輸入Lib名稱,不同的Lib之間用空格格開.
8.如何添加系統中的頭檔案(.h)到目前項目.
#include <FileName.h>,告訴編譯到VC系統目錄去找;使用#include "FileName.h",告訴編譯在目前
目錄找.
9.如何在Studio使用彙編調試
在WorkBench的Debugger狀态下按CTRL+F7.
10.怎樣處理ClassZiard找不到的系統消息
如果要在ClassWizard中處理WM_NCHITTEST等系統消息,請在ClassWizard中Class Info頁中将
Message filter改為Window就有了.
11.如何幹淨的删除一個類
先從Workspace中的FileView中删除對應的.h和.cpp檔案,再關閉項目,從實際的檔案夾中删除對應的.h和.cpp檔案與.clw檔案。
12.在Studio中快速切換兩個檔案
有時,我們需要在最近使用的兩個檔案中快速切換,換Ctrl+F6。這在兩個檔案不相今的時候就有用的.
13.取得源程式預處理後的結果:
在Studio裡,可以在->PROJECT->SETTINGS->C/C++->Project Options中,在最後加上 /P /EP這兩個編譯開關即可做到"隻進行預處理".就可以了。編譯以後就可以在源程式目錄中發現“檔案名.I ”的文本檔案。這就是預處理後的結果。
(注意注:區分大小定,請用大定/P)
14.在Debug模式中檢視WINAPI調用後的傳回值:
很簡單,且實用:在watch中加入@hr,err。在CSDN的文檔中心有一篇講得更細,請參考。
15.産生指定源程式檔案的彙編代碼:
從IDE菜單的Project->Setting打開項目設定,按如下檔案做:
1.先在左邊選擇指定檔案,可以多選。
2. 在右邊的C++屬性頁中,在category中選擇List Files,接着在下面的List Files Type中選擇Assembly and source code(或選擇其它),最後在List File Name中輸入在個C/C++源檔案産生的相應的彙編代碼的檔案。
3.編譯整個工程。
16.手工編譯純資源成dll:
Rc.exe /v data.rc
Cvtres.exe /machine:ix86 data.res
Link /SUBSYSTEM:WINDOWS /DLL /NOENTRY data.res ;編譯成DLL檔案
這種方式建立的DLL是最小的,比起你用Win 32 Dynamic Libray等産生的更小。
17:怎樣快速生成一個與現有項目除了項目名外完全相同的新項目?
利用File菜單下生成新項目中的Custom AppWizard ,選擇 An existing Project ,然後選擇現有項目的項目檔案名(*.dsp)Finish,編譯後就生成一個可以生成與現有項目相同但可以重新取名的項目的AppWizard。你可以象用MFC AppWizard一樣用它。如果不想用了,可以在VC 安裝目錄下Common/MSDev98/Template目錄中删除該Wizard中.awx和 .pdb檔案。
18:如果想把整個項目拷貝到軟碟,那些檔案可以删掉?
除了項目檔案夾中debug檔案夾可以删除外,.ncb,.clw,.opt 等檔案也可以删除,這些檔案Rebuilt all後可以重新生成。
附:VC項目檔案說明
.dsp 項目參數配置檔案,這個檔案太重要,重點保護對象。.
.dsw 工作區檔案,重要性一般,因為它資訊不我,容易恢複。
以下檔案在項目中是可丢棄的,有些檔案删除後,VC會自動生成的。
.clw ClassWizard資訊檔案,實際上是INI檔案的格式,有興趣可以研究一下.有時候ClassWizard出問題,手工修改CLW檔案可以解決.如果此檔案不存在的話,每次用ClassWizard的時候繪提示你是否重建.
.ncb 無編譯浏覽檔案(no compile browser)。當自動完成功能出問題時可以删除此檔案。build後會自動生成。
.opt 工程關于開發環境的參數檔案。如工具條位置等資訊;(可丢棄)
.aps (AppStudio File),資源輔助檔案,二進制格式,一般不用去管他.
.plg 是編譯資訊檔案,編譯時的error和warning資訊檔案(實際上是一個html檔案),一般用處不大.在Tools->Options裡面有個選項可以控制這個檔案的生成.
.hpj (Help Project)是生成幫助檔案的工程,用microsfot Help Compiler可以處理.
.mdp (Microsoft DevStudio Project)是舊版本的項目檔案,如果要打開此檔案的話,會提示你是否轉換成新的DSP格式.
.bsc 是用于浏覽項目資訊的,如果用Source Brower的話就必須有這個檔案.如果不用這個功能的話,可以在Project Options裡面去掉Generate Browse Info File,可以加快編譯速度.
.map 是執行檔案的映像資訊紀錄檔案,除非對系統底層非常熟悉,這個檔案一般用不着.
.pch (Pre-Compiled File)是預編譯檔案,可以加快編譯速度,但是檔案非常大.
.pdb (Program Database)記錄了程式有關的一些資料和調試資訊,在調試的時候可能有用.
.exp 隻有在編譯DLL的時候才會生成,記錄了DLL檔案中的一些資訊.一般也沒什麼用.