---
# System prepended metadata

title: 介紹C++
tags: [教學內文]

---

---
tags: 教學內文
disqus: hackmd
---
# 介紹C++

## 簡述起源


<font color="#f577">比雅尼·斯特勞斯特魯普博士</font>在20世紀80年代基於C語言發明並實現了C++
所以C++幾乎都是向下兼容C語言





## 寫每個程式都要用的程式碼

這式開頭程式碼，看到這裡的人，請先把下面程式複製起來，再繼續看。
```cpp=
#include <iostream>  
using namespace std; 
int main(){          
	
return 0;
}
```
## 簡單粗暴的解說
```cpp=
#include <iostream>  //引入函式庫
using namespace std; //要用所有寫在std(standard)命名空間(namespace)裡的功能
int main(){          //宣告並定義一個main函式
	             //程式碼的主要寫作區
return 0;            //回傳一個值0，代表控制權還給系統
}                    //用{ }(大括號)包住的地方叫區塊
```
這個程式碼是所有人一開頭就要打在編譯器上的，的要<font color="#f00">背起來</font>，或複製貼上，
如果你學到後面之後就會發現這些程式都是有意義的，根本不用死背。



## 開頭程式碼的意義
### <font color="#f00">真的想了解意思再往下看!!!</font>
如果真的想了解意思再往下看，希望學到了**基處篇**再回來看
```cpp=
#include <iostream>
using namespace std;
```
第一行是用來引入**內建函示庫**，又稱**標頭檔**，之後要用的很多功能都寫在這個函式庫裡面。
不能不引入函式庫，不然甚麼功能都無法完成
例如: cin cout 
當然可以引更多其他**函式庫**
```cpp=
#include <iostream> 
#include <cmath> 
#include <algorithm>
#include <cstdio>
```
<font color="00a6ff">企鵝語:</font>
提醒 iostream，讀作i-o-stream，
 cmath，讀作c-math，
 cstdio讀作 c-s-t-d-i-o。

第二行 using namespace std;
是要使用函式庫內的名稱空間(namespace)為std裡面的**函示**(或稱功能)
之後如果寫自訂函示會有功能不同但名稱相同的東西，std還會換成其他詞，以免錯誤。

還可以這樣寫
using std:: 要用的功能;

```cpp=
#include <iostream>
using std::cout;
using std::endl;
int main(){
	
return 0;
}
```
---------------------------


```cpp

int main(){
	
return 0;
}
```
這個是**主要函式**，又稱**main函式**
程式要執行的時候就會先找**main函式**去從上到下讀程式碼，
它跟**自訂函式**最大的區別也就只有這個。
return 0;是函示的特點
函示回傳一個值的時候就不執行了
也就是函示只執行到，程式回傳一個值。
main函示的話，回傳一個值代表控制權還給系統


用大括號{ }刮起來的是地方叫做**區塊**



<font color="00a6ff">企鵝寫於2021/1/12第一版</font>



















