---
# System prepended metadata

title: ASCII

---

# ASCII
- 字元的內幕ASCII
- 有時候在需要數字的地方輸入文字，會導致亂印出來一些數字，其實有跡可循
- C/C++ char型態大小為1byte
    - 1 byte = 8 bit = 2^8 =256
        - 這就是為什麼char有256個符號的原因
    - 美國國家標準機構局ANSI為統一國內各大電腦公司的char，選定了數個符號依照0~128順序排列成一張表ASCII，規定了電腦char的基本資料
        - 0~31：特殊
        - 32~127：可印字元
        - 128以後：開放給非英語系國家用
        - 每個字元都有一個內碼（int)
- 字元也可以用運算子（本質是數字）
- 字串可以看成字元陣列
來印26個字母
```cpp=
char *x="abc";
for(int i=0;i<3;i++){
cout << char[i] << " "; //C寫法
cout << x.at(i);        //C++寫法
}
```
- 使用ASCII內碼的原理可以檢查大小寫