# C語言中ASCII碼可見字符與不可見字符有哪些
## 一、ASCII碼概述
ASCII(American Standard Code for Information Interchange)是一種基于拉丁字母的字符編碼標準,共定義了128個字符(0-127)。這些字符可分為兩大類:
1. **可見字符**:可顯示在屏幕或打印輸出的符號
2. **不可見字符**(控制字符):用于控制設備或格式化文本的特殊字符
## 二、可見字符分類(32-126)
| 十進制范圍 | 字符類型 | 示例 |
|------------|------------------------|-------------------|
| 32 | 空格 | ` ` (空格符) |
| 48-57 | 數字 | 0-9 |
| 65-90 | 大寫字母 | A-Z |
| 97-122 | 小寫字母 | a-z |
| 33-47 | 標點符號和特殊字符 | !"#$%&'()*+,-./ |
| 58-64 | 更多符號 | :;<=>?@ |
| 91-96 | 方括號和附加符號 | [\]^_` |
| 123-126 | 花括號和波浪線 | {|}~ |
**典型示例**:
```c
printf("%c", 65); // 輸出'A'
printf("%c", 97); // 輸出'a'
printf("%c", 33); // 輸出'!'
十進制 | 轉義序列 | 名稱 | 作用 |
---|---|---|---|
0 | \0 | 空字符(NUL) | 字符串終止符 |
7 | \a | 響鈴(BEL) | 觸發蜂鳴器 |
8 | \b | 退格(BS) | 光標左移一位 |
9 | \t | 水平制表(HT) | 跳到下一個制表位 |
10 | \n | 換行(LF) | 移動到下一行 |
13 | \r | 回車(CR) | 光標回到行首 |
27 | \e | 轉義(ESC) | 控制序列引導符 |
127 | 刪除(DEL) | 刪除字符 |
char str[] = "Hello\0World"; // 實際輸出"Hello"
printf("Name:\tJohn\nAge:\t20");
字符比較:數字字符與數值不同
if('5' == 53) // ASCII碼53對應字符'5'
輸入輸出處理:
getchar(); // 可能讀取到不可見字符
字符串處理:注意包含控制字符的情況
char cmd[] = {27, '[', '2', 'J', '\0'}; // ANSI清屏指令
雖然不屬于標準ASCII,但在許多系統中: - 128-159:擴展控制字符 - 160-255:特殊符號和外語字母
#include <stdio.h>
int main() {
for(int i = 0; i <= 127; i++) {
printf("%3d: ", i);
if(i >= 32 && i != 127) {
printf("'%c'", i);
} else {
printf("控制字符");
}
printf("\n");
}
return 0;
}
輸出說明: - 32-126顯示實際字符 - 0-31和127顯示”控制字符”
掌握ASCII碼分類有助于: - 精確處理字符串 - 實現終端控制功能 - 調試字符相關錯誤 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。