ASCII 码表

来自cppreference.com
< c‎ | language


下表包含所有 128 个 ASCII 码对应的十进制 (dec) 、八进制 (oct) ,十六进制 (hex) 和字符 (ch) 的值。

dec oct hex ch dec oct hex ch dec oct hex ch dec oct hex ch
0 0 00 NUL (空) 32 40 20 (空格) 64 100 40 @ 96 140 60 `
1 1 01 SOH (标题开始) 33 41 21 ! 65 101 41 A 97 141 61 a
2 2 02 STX (正文开始) 34 42 22 " 66 102 42 B 98 142 62 b
3 3 03 ETX (正文结束) 35 43 23 # 67 103 43 C 99 143 63 c
4 4 04 EOT (传送结束) 36 44 24 $ 68 104 44 D 100 144 64 d
5 5 05 ENQ (询问) 37 45 25 % 69 105 45 E 101 145 65 e
6 6 06 ACK (确认) 38 46 26 & 70 106 46 F 102 146 66 f
7 7 07 BEL (响铃) 39 47 27 ' 71 107 47 G 103 147 67 g
8 10 08 BS (退格) 40 50 28 ( 72 110 48 H 104 150 68 h
9 11 09 HT (横向制表) 41 51 29 ) 73 111 49 I 105 151 69 i
10 12 0a LF (换行) 42 52 2a * 74 112 4a J 106 152 6a j
11 13 0b VT (纵向制表) 43 53 2b + 75 113 4b K 107 153 6b k
12 14 0c FF (换页) 44 54 2c , 76 114 4c L 108 154 6c l
13 15 0d CR (回车) 45 55 2d - 77 115 4d M 109 155 6d m
14 16 0e SO (移出) 46 56 2e . 78 116 4e N 110 156 6e n
15 17 0f SI (移入) 47 57 2f / 79 117 4f O 111 157 6f o
16 20 10 DLE (退出数据链) 48 60 30 0 80 120 50 P 112 160 70 p
17 21 11 DC1 (设备控制1) 49 61 31 1 81 121 51 Q 113 161 71 q
18 22 12 DC2 (设备控制2) 50 62 32 2 82 122 52 R 114 162 72 r
19 23 13 DC3 (设备控制3) 51 63 33 3 83 123 53 S 115 163 73 s
20 24 14 DC4 (设备控制4) 52 64 34 4 84 124 54 T 116 164 74 t
21 25 15 NAK (反确认) 53 65 35 5 85 125 55 U 117 165 75 u
22 26 16 SYN (同步空闲) 54 66 36 6 86 126 56 V 118 166 76 v
23 27 17 ETB (传输块结束) 55 67 37 7 87 127 57 W 119 167 77 w
24 30 18 CAN (取消) 56 70 38 8 88 130 58 X 120 170 78 x
25 31 19 EM (媒介结束) 57 71 39 9 89 131 59 Y 121 171 79 y
26 32 1a SUB (替换) 58 72 3a : 90 132 5a Z 122 172 7a z
27 33 1b ESC (退出) 59 73 3b ; 91 133 5b [ 123 173 7b {
28 34 1c FS (文件分隔符) 60 74 3c < 92 134 5c \ 124 174 7c |
29 35 1d GS (组分隔符) 61 75 3d = 93 135 5d ] 125 175 7d }
30 36 1e RS (记录分隔符) 62 76 3e > 94 136 5e ^ 126 176 7e ~
31 37 1f US (单元分隔符) 63 77 3f ? 95 137 5f _ 127 177 7f DEL (删除)

注意:在 Unicode 中, ASCII 字符块被称作 U+0000..U+007F 基础拉丁( Basic Latin )

示例

#include <stdio.h>
 
int main(void)
{
    puts("Printable ASCII:");
    for (int i = 32; i < 127; ++i) {
        putchar(i);
        putchar(i % 16 == 15 ? '\n' : ' ');
    }
}

可能的输出:

Printable ASCII:
  ! " # $ % & ' ( ) * + , - . /
0 1 2 3 4 5 6 7 8 9 : ; < = > ?
@ A B C D E F G H I J K L M N O
P Q R S T U V W X Y Z [ \ ] ^ _
` a b c d e f g h i j k l m n o
p q r s t u v w x y z { | } ~

参阅