# 變數範圍
1. 全域變數const:
const類型將可以建立在函數之外(包括main)
```cpp
#include <iostream>
using namespace std;
const int a = 100;
int main () {
//...
}
```
2. 區域變數:
最一般的變數,不須額外加任何前綴詞
```cpp
int main () {
int a = 100;
//...
}
```
extern可以取得同資料夾的其他檔案內的變數
A.cpp
```cpp
int a = 100;
// ...
```
Main.cpp
```cpp
int main () {
extern int a;
//...
}
```
::: danger
extern取得的其他地方的變數無法立刻設定值,必須在之後設定
:::
```cpp
int main () {
extern int a;
a = 200;
//...
}
```
extern除了取得變數,還可以取得函數
3. 區塊變數:
static可以用來限定該變數,讓他無法被extern
```cpp
static int a = 100;
```
# 控制結構
1. 循序結構
由上到下一行一行的執行,即是一般C++程式的執行方法
3. 選擇結構
選擇性的執行部分程式,C++中有三種:
1. if
2. if else
3. switch
5. 重複結構
重複執行部分程式,C++中也有三種:
1. for
2. while
3. do while
```cpp
int i = 0;
do {
i += 1;
cout<<i;
} while (i < 3);
```
會輸出123