2
ASCII 编码
GESP 二级 · 知识点 4

🔤 ASCII 编码

电脑里的每个字符都有自己的「身份证号」:空格 32、'0' 是 48、'A' 是 65、'a' 是 97。记住这四个数,就能推算出一大串字符的号码!

考纲知识点:常见字符的ASCII 编码、字符编码之间的相互转换
📖
考纲 · 知识点详述
摘自《CCF编程能力等级认证 C++&Python 认证标准》C++ 二级
  1. (5)了解编码的基本概念,了解ASCII 编码原理,能识别常用字符的ASCII 码(空格:32、“0”:48、“A”:65、“a”:97),并掌握ASCII 码和字符之间相互转换的方法。
📚
先学一学
花 4 分钟读完下面 4 课,再去闯关就不慌啦
1
🔢 ASCII:每个字符的「身份证号」

电脑其实只认数字。我们打的每一个字符(字母、数字、符号、空格),电脑内部都存成一个编号,这套编号规则就叫 ASCII 编码。记住四个「明星号码」,其他都能推出来:

🌟 一句话
电脑存的不是「A」这个字母,而是数字 65;显示时再按 ASCII 表翻回「A」。所以字符参与运算,玩的是它背后的编号。
💡 口诀:空格 32、'0' 48、'A' 65、'a' 97,四个号码牢牢记。
🌟 行业实际:为什么需要编码?
电脑只懂 0/1,不同国家还想用自己的文字(中文、阿拉伯文)。ASCII 是最早、最基础的英文编码(128 个),后来才有了能装下汉字的 GBK 和国标 UTF-8(全球通用)。今天你发的每条微信,底层都是一串编码号。
💡 口诀:电脑只认号,ASCII 是英文的身份证;汉字靠 GBK/UTF-8。
2
📐 字母与数字的规律

ASCII 表排得很整齐,记住规律就能推算任意字符:

📝 跟着算一算
'A'=65 → 'B'=66 → 'C'=67
'0'=48 → '1'=49 → … → '9'=57
'a'=97 → 比 'A' 大 32
知道一个就能推出旁边所有:字母按顺序排队,每往后一个加 1。
💡 口诀:字母连着排,大写 65 起、小写 97 起;大小写差 32。
🆚 易混对比:'0' 不是 0
· 字符 '0' 的码值是 48,它是「字」,不是数字。
· 数字 0 就是 0 这个数本身。
所以判断「是不是数字字符」要用 '0' <= ch && ch <= '9',不能写成 0 <= ch && ch <= 9(那是判断整数 0~9,不是字符)。
💡 口诀:'0' 是 48 不是 0;判断数字字符用单引号包住。
3
🎯 字符玩「加减游戏」= 按编号算

字符参与运算时,电脑用的是它的 ASCII 码值,不是它长什么样:

🧮 跟着算一算(真题同款)
· 'F' + 1 = 70 + 1 = 71 = 'G'(往后一个字母)
· '9' + '1' = 57 + 49 = 106
· '5' + 4 = 53 + 4 = 57 = '9'
· (char)(a + b - '0'):把两个数字字符「相加」变回一个字符('3'+'6'-'0'=51+54-48=57='9')。
💡 口诀:字符运算看码值;'F'+1='G'、'9'+'1'=106、'5'+4='9'。
⚠️ 最容易踩的坑:'4' % '2' 不是 0!
'4' % '2' 等于 52 % 50 = 2(按 ASCII 码值 52、50 取余)。只要看到字符在算数,先换成码值再算,千万别当成数字 4 % 2 = 0!
💡 口诀:字符运算看码值;大小写差 32;'0'~'9' 是 48~57;'4'%'2'≠0。
4
🧠 实战推算与易错对比

把前面学的拼起来,就能秒答真题式问题。记住:先想清每个字符的码值,再按数学算

📝 真题串讲(含干扰项辨析)
· 'C' = 67:'A'=65,C 第 3 个 → 65+2=67(干扰项 69 是把 'C' 当成小写 'c' 的 99 了)。
· 判断数字字符:必须用 '0' <= a && a <= '9'(干扰项 0 <= a && a <= 9 是判断整数,a >= '0' || a <= '9' 用了「或」会全成立)。
· (char)('3'+'6'-'0') = '9':51+54-48=57='9'(干扰项 '39' 是把字符拼字符串了,这里是算数)。
💡 口诀:先换码值再算;判断数字字符用 '0'~'9' 区间加 &&。
🆚 易混对比:字符运算 vs 数字运算
· '9' + '1' = 106(码值相加),不是 "91"(字符串拼接是另一回事)。
· '5' + 4 = 57 = '9',字符加数字得到字符。
· 码值排序:空格 32 < '0' 48 < 'A' 65 < 'a' 97
💡 口诀:字符相加是码值相加;空格<数字<大写<小写。
🎯
闯关小锦囊 · 考点提醒
🎮
学完了?来闯关!
下面 14 个小挑战,点一点就能玩

Demo 原型 · 每个知识点独立页面 · 暂不含真实编译与进度存储。