转义字符 \t
转义字符 \t
引言
在学习 c 程序设计语言第二版
时,无法理解习题 1.20 制表符终止位 的概念,查阅相关资料,发现是未理解转义字符 \t
制表符(TAB)
\t
制表符用于控制水平光标位置。
在终端默认为 8 个字符,制表符的特性总结为:将当前光标自动移动到,距离最近的下一个8n字符间隔之后,n 为正整数
TIP
8 个字符间隔是默认行为,可用 tabs n
设定 \t
的间距
,字符间隔为单个空格宽度 ,若为中文等其他字符可能占据多个字符间隔
而之前的错误认知一直以为制表符,代替固定的字符间隔,例如 \t
表示 3 个字符间隔可以采用如下方式验证
shell 中输入如下指令
# 在出现 \t 的位置后利用 | 标识
echo "hello--\t|中aa\t|\t|\na\t|----\t|------\t|"
在 \t
后填充 |
字符模拟光标位置,输出结果为:
hello-- |中aa | |
a |---- |------ |
结果可知 \t
会自动调整光标位置,使之在 8n 个字符间隔之后
也可以在 vscode
编辑其中验证此特性,输入一个或多个字符按一下 tab
键看光标会移动到哪?
注意编辑器中查看
tab
相关设置,确定使能了制表符特性
实际上在文档软件中也存在制表符概念,这里以 mac 自带的 pages 举例。 参看动图:
可以看到,在按下 tab
键后,光标的自动移动到,布局中设定的制表符距离之后。
通过修改距离,会更改光标的移动间距,读者可以尝试输入字符再按 tab 键,确认光标移动是否符合如下规则
光标只会相对每行起始位置,移动到最近
xn
间距后,x
表示设定的距离,n
为正整数
通过上述示例希望读者完全理解 \t
的作用。
此外推荐阅读 阮一峰回车和换行符 理解 \r
和 \n
既然理解了制表符的功能制表符终止位的含义就清晰可见了
制表符终止位是指使用制表符键所对应的光标位置