2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。

Slides:



Advertisements
Similar presentations
1 第二讲 C++ 编程基础. 2 主要内容 C++ 语言概述 C++ 编程基础 数据的简单输入输出 C++ 的发展 C++ 源程序结构与书写规范 C++ 编译器和集成开发环境.
Advertisements

C++语言程序设计教程 第5章 构造数据类型 第6章 C++程序的结构.
移动应用软件开发技术 第二讲:C++编程基础
C语言程序设计 主讲教师 :张群燕 电话:
第 2 章 初探 C++.
第一章 C语言概述 计算机公共教学部.
编译原理上机实习
第二章 JAVA语言基础.
第4章 数组 数组是由一定数目的同类元素顺序排列而成的结构类型数据 一个数组在内存占有一片连续的存储区域 数组名是存储空间的首地址
C++程序设计 王希 图书馆三楼办公室.
2.1 基本資料型別 2.2 變數 2.3 運算式與運算子 2.4 輸出與輸入資料 2.5 資料型別轉換 2.6 實例
走向C++之路 WindyWinter WindyWinter感谢诸位前来捧场。
Chapter 1 用VC++撰寫程式 Text book: Ivor Horton.
struct 可以在同一個名稱下擁有多種資料型態。使用struct能讓資料的存取和處理更為靈活。
資料大樓 --談指標與陣列 綠園.
Derived Class 前言 衍生類別的定義 單一繼承 public, protected, 和 privated 基底類別
C++程序设计 第二讲 清华大学软件学院.
刘胥影 东南大学计算机学院 面向对象程序设计1 2011~2012第3学期 刘胥影 东南大学计算机学院.
Scope & Lifetime 前言 Local Scope Global Functions & Objects
C 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
第一章 程序的基本结构. 第一章 程序的基本结构 教材及授课结构 本章目标 基本内容 扩展阅读 上机指导 应用举例 习题.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
Object-Oriented Programming in C++ 第一章 C++的初步知识
程序设计期末复习 黎金宁
第三章 C++中的C 面向对象程序设计(C++).
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
C++语言程序设计 第二章 C++简单程序设计.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
Java程序设计 第2章 基本数据类型及操作.
明解C++教學手冊 柴田望洋 博士 著 書號:PG20269
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
第三章 C# 基础知识.
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
C++大学基础教程 第3章 C++控制语句 北京科技大学 信息基础科学系.
第三章 链表 单链表 循环链表 多项式及其相加 双向链表 稀疏矩阵.
C++大学基础教程 第11章 多态性 北京科技大学 信息基础科学系 2019/4/8 北京科技大学.
Name1..hour //加班時數 name2..hour //請假時數
Chapter 2 & Chapter 3.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
潘爱民 C++ Overview 潘爱民
程式結構&語法.
4 條件選擇 4.1 程式基本結構 循序式結構 選擇式結構 重複式結構 4-3
第 二 章 数据类型、运算符与表达式.
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
Oop8 function函式.
第二章 Java基本语法 讲师:复凡.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
物件導向程式設計 CH2.
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
第11章 從C到C++語言 11-1 C++語言的基礎 11-2 C++語言的資料型態與運算子 11-3 C++語言的輸出與輸入
C++语言程序设计教程 第2章 数据类型与表达式 第2章 数据类型与表达式 制作人:杨进才 沈显君.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
C++程式設計入門 變數與運算子 作者:黃建庭.
第二章 Java语法基础.
C++程序设计 吉林大学计算机科学与技术(软件)学院.
第二章 类型、对象、运算符和表达式.
C/C++基礎程式設計班 C++: 物件的使用、參考、重載函式 講師:林業峻 CSIE, NTU 3/28, 2015.
#include <iostream.h>
第二章 Java基本语法 讲师:复凡.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
本章主題 C++的程式結構 資料型態與宣告 算術運算 簡易的輸入輸出指令 程式編譯(Compile)的過程與原理.
第2章 Java语言基础.
C++语言程序设计 C++语言程序设计 第十一章 异常处理 C++语言程序设计.
變數與資料型態  綠園.
第二章 Java基础语法 北京传智播客教育
第2章 Arduino编程.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。

C++ 的基本語法和使用環境 2.1 基本程式開發步驟 2.2 第一個完整的C++ 程式 2.1 基本程式開發步驟 2.2 第一個完整的C++ 程式 2.3 Borland C++ 編譯器的取得和安裝使用 2.4 Visual C++.NET程式開發步驟 2.5 第二個C++ 程式 2.6 C++ 代號的命名規則

基本程式開發步驟 1. 編輯 (edit) 2. 前處理 (preprocess) 3. 編譯 (compile) 4. 聯結 (link) 5. 裝載 (load) 6. 執行 (execute)

基本程式開發步驟示意圖

2.2 第一個完整的C++ 程式 // Test.cpp // 程式的目的是在顯示器上顯示一行文字 #include <iostream> using std::cout; using std::endl; // -- 程式主體部份 --------------------- int main() { cout << "Hello, 您好!" // 主要的敘述 << endl; return 0; } 這個程式包括了註解(comments)、前處理指令(preprocessor directives)以及程式主體三個部份。

註解的目的 1. 在每個檔案的開頭置入一段文字, 以便於日後追查。 2. 補充說明變數和函數等自行定義的 元件之意義,以及使用上的注意事項。 1. 在每個檔案的開頭置入一段文字, 以便於日後追查。 2. 補充說明變數和函數等自行定義的 元件之意義,以及使用上的注意事項。 3. 使程式更容易閱讀。 4. 將程式的某些部份暫時轉成註解,可以不 用真的把該部份程式刪除,隨時可以恢 復,避免重複輸入。

註解的兩種做法 1.從雙斜線「//」的右邊開始,一直到整行結束,都視為註解。 2. 以「/*」開頭,一直到「*/」,中間所包括的文數字或符號都視為註解。

註解的兩種形式 /* Test.cpp 程式的目的是在顯示器上顯示一行文字 */ #include <iostream> using std::cout; using std::endl; // -------- 程式主體部份 --------------- int main() { cout << "Hello, 您好!" /* 主要的敘述 */ << endl; return 0; }

前處理指令 (preprocessor directives) 以符號 # 開頭的指令行在程式編譯前就會由前處理器先行處理,每個前處理指令都必需佔據獨立的一行指令。 #include <iostream> 指令行 using std::cout; using std::endl; 稱為using宣告 (using declaration)。

程式主體 C++ 程式可能含有一個或一個以上的函數,但只能有一個叫做main。 不管main() 是不是程式中第一個出現的函數,程式都是從main() 開始執行。 在main() 左邊的關鍵字int表示main() 的執行結果將會傳回一個整數。與程式本體內的最後一個敘述 return 0; 是對應的。

cout 和 endl cout << "Hello, 您好!" << endl; 「cout」唸作C-Out,代表由標頭檔 <iostream> 定義的一個輸出資料流物件 (output stream object)。運算符號「<<」稱為資料流插入運算子 (stream insertion operator)。 「endl」是一種格式操縱子 (manipulators),用來設定輸出格式。

程式 Test.cpp 的更簡略形式 #include <iostream> using namespace std; int main() { cout << "Hello, 您好!" << endl; return 0; }

using 指令 (using directive) using namespace std; 在using指令之後,所有名稱空間 std內的標準元件都開放出來,不再受限,所以不需要在使用「using std:cout;」 和「using std::endl;」兩個using宣告。

C++ 程式的編排方式 下列的寫法都可以產生正確的輸出結果: (1) #include <iostream> using namespace std; int main() { cout << "Hello, 您好!" << endl; } (2) int main() { cout << "Hello, 您好!" << endl;} (3) int main() {

延遲 DOS 視窗畫面自動關閉的方法 // TestW.cpp // 延遲DOS畫面自動關閉 #include <iostream> using namespace std; // 程式主體部份 int main() { cout << "Hello, 您好!" << endl; system(”PAUSE”); return 0; }

從 Windows XP 檔案總管直接以滑鼠執行 TestW.exe

Edit-Compile-Run 的程式開發流程循環。

使用 Borland 編譯器在 DOS 下編譯和執行範例程式 Test.cpp

Visual C++.NET 程式開發步驟 啟動Visual C++.NET

Visual Studio.NET 的「起始頁」

建立新專案

「Win32 應用程式精靈」視窗

Visual Studio.NET 的設計視窗

PTest.cpp #include "stdafx.h" using namespace std; int main() { cout << "Hello, 您好!" << endl; cin.get () ; return 0; }

完成後的程式碼視窗如下圖所示:

接著在工具列中按下「全部儲存」鈕:

再按下工具列中的「啟動」鈕:

要求重新編譯和執行的「Microsoft Development Environment 視窗」

執行結果

開啟舊專案

插入檔案 「新增檔案」視窗

加入標頭檔

「另存新檔」視窗,完成加入檔案的動作

變數的宣告和使用 所有C++ 程式內的變數都要經由宣告才能使用。 或 int x, y, Sum; int x; // 第一個輸入整數 int y; // 第二個輸入整數 int Sum; // 兩個整數的和

宣告敘述與記憶體空間的對應關係

變數宣告的兩重含意 1. 指定在記憶體內的空間大小 2. 規定這個變數所能接受的運算

rval (right value) 和 lval (left value) 指派運算子「=」右邊的運算元稱為rval (右值),它必須在這個敘述處理前就有確定的值。指派運算子「=」左邊的運算元稱為lval (左值),準備用來存入rval的值;它必須具有足夠的記憶空間,而且是屬於相容的資料型態。

輸入資料流物件 (input stream object) 「cin」 用來配合資料流擷取運算子 (stream extraction operator),「>>」,把來自鍵盤的輸入讀進執行中的程式。例如:cin >> x; cin和cout都是定義於標頭檔<iostream>,也使用std做為namespace。

從顯示器輸出訊息 cout << “請輸入第一個整數\n”; cout << “請輸入第一個整數” << endl;

第二個 C++ 程式 Sum.cpp // Sum.cpp // 要求使用者輸入兩個整數,並把計算結果輸出 #include <iostream> using namespace std; int main() { int x; // 第一個輸入整數 int y; // 第二個輸入整數 int Sum; // 兩個整數的和 cout << "請輸入第一個整數\n"; cin >> x; cout << "請輸入第二個整數\n"; cin >> y; Sum = x + y; cout << "這兩個整數的和是: " << Sum << endl; return 0; }

程式 Sum.cpp 的操作過程

C++ 代號(identifiers)的命名規則 1. 代號由英文字母、數字和底線符號 「_」構成,長度不限。 2. 英文字母的大小寫不同。 3. 開頭不可以用數字。 4. 不可以使用C++ 內設的關鍵字 (keywords)。

C++ 的74個關鍵字。 and and_eq asm auto bitand bitor bool break case catch char class compl const const_cast continue default delete do double dynamic cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new not not_eq operator or or_eq private protected public register reinterpret_c return ast short signed sizeof static static_cast struct switch template this throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while xor xor_eq

C++ 的代號 (identifiers) 1. 可以接受的代號: Tax Tax_Paid TaxPaid a1 velocity A_1 _GoodDay 2. 錯誤的命名方式: 1b %a -x 合計 asm you&me A@mail