You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编程中str[i] - 'a' 语句的具体含义是什么?

str[i] - 'a'语句含义解答

在支持字符算术运算的编程语言(如C、C++、Java、Go等)中,字符本质存储的是对应的ASCII码整数值,字符减法的本质是ASCII码数值的减法运算。

  • 小写英文字母的ASCII码是连续递增的序列:'a'对应十进制数值97,'b'对应98,以此类推到'z'对应122。
  • 当str[i]为小写英文字母时,str[i] - 'a'会返回0~25区间的整数:'a'-'a'=0、'b'-'a'=1、……、'z'-'a'=25,相当于把小写字母映射为0起始的顺序索引。

常见使用场景

  • 快速实现小写字母计数:只需初始化长度为26的数组,直接用str[i] - 'a'的结果作为数组下标,即可对应到每个字母的统计位置,无需额外的分支判断。
  • 用于字符位移类逻辑,比如凯撒加密、字母顺序转换等场景,直接对转换后的整数做偏移计算即可。

注意:如果str[i]不属于小写英文字母区间,运算结果会超出0~25范围,使用前建议先做字符合法性判断,避免数组越界等问题。

内容的提问来源于stack exchange,提问作者newuser11111

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 16:57:00