Presentation is loading. Please wait.

Presentation is loading. Please wait.

C++ 安裝與設定、簡介、基本 程式設計步驟與環境 講師:陳烱勳

Similar presentations


Presentation on theme: "C++ 安裝與設定、簡介、基本 程式設計步驟與環境 講師:陳烱勳"— Presentation transcript:

1 C++ 安裝與設定、簡介、基本 程式設計步驟與環境 講師:陳烱勳 Email:mikemouse@is.cs.nthu.edu.tw

2 DEV C++ 免費且開放原始碼的 C++ 程式設計軟體 多頁面視窗 工程編輯器 編輯器和編譯器 (GNU GCC 編譯器 ) 連接程式和執行程式 高亮度語法顯示 http://sourceforge.net/projects/dev- cpp/files/Binaries/Dev- C%2B%2B%204.9.9.2/devcpp- 4.9.9.2_setup.exe/download http://sourceforge.net/projects/dev- cpp/files/Binaries/Dev- C%2B%2B%204.9.9.2/devcpp- 4.9.9.2_setup.exe/download

3 安裝 DEV C++ 下載完成,用左鍵按該檔案兩下,進行 安裝 選擇語言  English

4

5 第一次執行  選擇語言 請選擇 Chinese [TW]

6

7 操作環境說明 編寫程式區 功能表 工具列 專案瀏 覽區 狀態列 編譯器輸出 紀錄區

8 修改語言 -1

9 修改語言 -2

10 建立專案 選擇「專案」項目

11 選擇此項目

12 輸入專案名稱

13

14 選擇此項目,執行程式

15 程式類語言的演進與分類 程式語言 低階語言高階語言 機器語言 組合語言 FortranC/C++Java

16 機器語言 (Machine Language) 0 : 代表向前走一步 1 : 代表向後退一步 2 : 代表往左轉 90 度 3 : 代表往右轉 90 度 往前走三步、再往右走三步 指令: 0003000

17 組合語言 (Assembly) Forward 取代 0 Backward 取代 1 Left 取代 2 Right 取代 3 往前走三步、再往右走三步 Forward Right Forward 原始程式 ( 組合語言 ) 組譯器 機器碼 執行

18 高階語言 往前走三步、再往右走三步 原始程式 ( 高階語言 ) 編譯器 或 解譯器 機器碼 執行

19 高階程式語言設計之基本原理 規劃 design 撰寫程式碼 coding 轉換程式碼 compiler 測試程式 test 語法錯誤 規劃錯誤 ( 邏輯錯誤 ) ( 輸出結果 ≠ 目標 )

20 規劃 (design) 了解所需解決的問題 利用文字敘述或流程圖來規劃程式執行 流程 例如:墾丁出遊 新竹家裡 新竹高鐵站高鐵左營站 公車墾丁 台鐵新竹站台鐵屏東站

21 判斷輸入數值為奇數或偶數 開始 輸入數值 X Z=X mod 2 Z=0 顯示 X 為偶數 顯示 X 為奇數 結束 不成立 (false) 成立 (true)

22 撰寫程式 適當的縮排 Tab 鍵或空白鍵 明確的註解 提高程式可讀性,以利日後維護 有意義的命名 增加可讀性與可偵錯性 大括號中每行都內縮

23 轉換程式碼 ( 編譯 -compiler) 通常 C++ 的編譯器都是與 C 相容的,依據 程式附檔名來判斷編譯的程式碼屬於哪 一種 (.c 代表 C 程式檔案;.cpp 代表 C++ 程 式檔案 ) 語法錯誤 程式碼編寫方式不符合語言規則 會於訊息視窗中,告知您語法錯誤的位置 ( 行號和檔案 ) ,以及該問題的簡要說明

24 編譯和連結示意圖

25 測試程式 (test) 語法錯誤 (Syntax errors) 程式碼有語法上的錯誤,無法產生執行檔或機器碼 依照訊息視窗中的指示,修正之 執行時錯誤 (Run-time errors) 執行檔或機器碼執行時發生未控制的錯誤,錯誤訊息由作業 系統送出 例如:除以 0 語意錯誤或邏輯錯誤 (Logical errors) 及時檢視變數內容值 須有偵錯工具 單步執行 (step-by-step) 設立中斷點 列印標記測試

26 除錯工具 設定啟用除錯資訊

27 設定中斷點

28 開始除錯

29

30 除錯可用工具 單步執行 執行下一步的意思 跳過函數單步執行 不往區塊裡面執行,一個區塊當做一行來執行的意思 追蹤入函式 跳到函式裡追蹤執行 執行到游標位置 另一種不用中斷點的方式,在游邊處就會停下來,效果跟中 斷點一樣 中斷執行 停止除錯,如果你不想繼續除錯了,就按這個按鈕停止

31 新增監看式

32 第一個 C++ 程式

33

34 編譯

35 執行

36 程式解析 - 前置處理區 多以 # 開頭 前置處理區並不算 C++ 正式指令,所以不 須在指令後加上「 ; 」作為結束 用以指定使用哪些已提供函數 C++ 的輸出 (cout) 、輸入 (cin) 函數接定義於 iostream 標頭檔中

37 #include 指令可有下列兩種格式: #include 搜尋系統的 INCLUDE 資料夾去找要含括的檔案 主要是用於含括標準函式庫中的含括檔使用。 #include “ 檔名 ” 指示前置處理器先到目前的工作目錄去找, 若找 不到, 再到系統的 INCLUDE 資料夾去找 常用於要含括自己寫的檔案 #include “B.cpp”

38 C/C++ 舊型 標頭檔 C/C++ 新型 標頭檔 說明 包含數學運算函數 包含標準輸出輸入函數 包含字串處理函數 包含標準輸出輸入函數 包含檔案輸出入的處理函數

39 名稱空間 (Namespace) 早期 C/C++ 語言將所有識別字 ( 變數、函 數與類別 ) 都定義為全域性名稱空間 名稱衝突 / 覆寫現象 名稱空間 (namespace) 用來區分相同名稱且不同定義的變數、函數 或類別 C++ 新型標頭檔都定義在 std 名稱空間內

40 名稱空間 (Namespace) 嬰兒座椅 MP3 音響 嬰兒座椅 MP3 音響 氣動式按摩椅 CD 音響 氣動式按摩椅 CD 音響 氣動式按摩椅 空力套件 後視鏡方向燈 氣動式按摩椅 空力套件 後視鏡方向燈 舒壓震動按摩椅 減速車距警示系 統 舒壓震動按摩椅 減速車距警示系 統 車庫 圖片來源 : 豐田汽車 http://www.toyota.com.tw/

41 名稱空間 (Namespace) 嬰兒座椅 MP3 音響 嬰兒座椅 MP3 音響 氣動式按摩椅 CD 音響 氣動式按摩椅 CD 音響 氣動式按摩椅 空力套件 後視鏡方向燈 氣動式按摩椅 空力套件 後視鏡方向燈 舒壓震動按摩 椅 減速車距警示 系統 舒壓震動按摩 椅 減速車距警示 系統 車庫 1 車庫 2 車庫 3 車庫 4 圖片來源 : 豐田汽車 http://www.toyota.com.tw/

42 如果不設定名稱空間,必須在每個函數 之前加上它的名稱空間

43 main() 函數 C/C++ 程式的進入點 ( 起始點 ) 稱 main() 為主程式 函數主體 ( 程式敘述 )

44 函數有回傳值時 函數型態為 回傳資料型態 函數名稱 ( 參數 ) int main( int argc, char *argv[]) Return 0; return EXIT_SUCCESS; 函數沒有回傳值時 函數型態為 void 函數名稱 ( 參數 ) void main( int argc, char *argv[]) System(“pause”); 暫停執行,以利觀看程式執行結果 需 #include

45 程式敘述 「 ; 」代表一個指令或一個程式呼叫的結 束 C++ 的指令具有自由化格式,只要不違背 基本語法都可以。

46 int main();  intmain(); return 0;  return0; cout << “hello”;  c out << “hello”; 正確表示 錯誤表示

47 程式註解 單行註解 : // 註解文字 區塊註解: /* 註解文字區塊 */ 不可以有巢狀結構

48 輸出與輸入功能 cout 不須指定輸出資料格式,由系統自動判斷 使用「 << 」串接輸出運算子 cout << ‘a’; // 輸出字元 cout << “ 字串 ”; // 輸出字串 cout << 變數 ; // 輸出變數,會自動將變數轉成字串再輸出 cout << “ 字串 ” << 變數 ; // 串接輸出 cout << “ 字串 ”<< 變數 << 字串 ;

49 cin 執行此指令時,程式會停下來等待使用者輸 入 使用「 >> 」串接輸入運算子 cin >> 變數 1; cin >> 變數 1 >> 變數 2 >>... >> 變數 n;

50 字元格式說明 \0 產生空格 (null space) \a 產生嗶聲 (bell ring) \b 倒退 (backspace) \t 移到下一個定位點 (tab) \n (endl) 換行 (newline) \r 跳到該行起點 (carriage return) \' 插入單引號 (single quote) \" 插入雙引號 (double quote) \\ 插入反斜線 (back slash)

51


Download ppt "C++ 安裝與設定、簡介、基本 程式設計步驟與環境 講師:陳烱勳"

Similar presentations


Ads by Google