---
# System prepended metadata

title: 初步基本介紹
tags: [中和高中]

---

# 初步基本介紹

## C/C++介紹

C語言幾乎可以說是一切程式語言的基礎，如果你會C語言，其他語言學起來會較為輕鬆...吧，那*C++* 跟C有啥差別?*C++* 就是C的進階版，多了物件導向，重載運算子等等的部分，其中STL模板庫是對未來打比賽的人來說最重要的東西，裡面包還很多資料結構，在比賽中可以直接使用。

C的副檔名: .c
C++的副檔名: .cpp

:::info
.cpp可以可以執行C語言和C++
但.c檔不能執行C++，只能執行C語言
:::

---

先來個最基礎的模板
```c=
#include<stdio.h>
int main(){
    //.....            //為標註，讓編譯器不會執行這行
    return 0;
}
```

我們一行一行來看

---


```c
#include<stdio.h>
```
所謂`stdio.h`代表<font color=#FF0000>標頭檔</font>

那什麼是標頭檔?

裡面包含了很多我們常用的函式，可以比喻為工具箱，裡面塞了很多工具可以使用。

https://zh.wikipedia.org/wiki/Stdio.h

其中最常用的就是`printf()`和`scanf()`

`#include`就是將標頭檔引入到我們的工作空間內，讓我們可以使用。

---

```c=
int main(){
    return 0;
}
```

`int`是資料的型態，這邊先粗略介紹，代表這個函示的回傳值是整數。

`main`是指主函式的意思，是執行編譯的時候整個程式的<font color=#FF0000>進入點</font>，讓編譯器知道要從這個函式開始往下執行。

`()`是傳入的值，如果是空白就不會有任何東西傳入，有些IDE的模板裡面會附東西，可以把它直接刪掉沒關西，目前不會用到。

`{}`是整個函釋的主體，裡面會打上你要的程式碼。


`return 0`是回傳給主函式整數0，代表這個主函式結束，但現在幾乎都不用加，也會幫你停止程式。

:::danger
超重要:每段程式後都需要加`;`代表這段程式結束
:::
###### tags: `中和高中`