【发布时间】:2015-01-23 19:41:15
【问题描述】:
这是练习 5-11: 将程序 entab 和 detab(在第 1 章中作为练习编写)修改为 接受一个制表位列表作为参数。如果没有参数,请使用默认选项卡设置。
entab 被描述为
用最少的制表符/空格数替换空格字符串以实现相同的间距。 应优先使用选项卡以让字符数组将“选项卡”存储为一个索引 而不是多个空格。
究竟什么是“制表位”,我们如何接受制表位的列表?我很困惑。
【问题讨论】:
-
制表位是当您点击制表符(或打印 \t)时“光标停止的下一个位置”。它允许您在列中对齐文本 - 而不是计算字符和空格。这对于比例字体更为重要,但我相信这个练习适用于单空间字体。
-
要获得“接受停靠点列表”的帮助,您需要出示您的代码。很可能您将传递一个
int[]数组和作为另一个int的停靠点数 -
我在理解这个问题时遇到了问题,所以还没有编写代码。现在我相信程序希望用户以 int[] 数组的形式输入止损。谢谢@Floris!
-
在过去编写 K&R 时,打字机有
tab stops,它配置每次按下TAB键时纸张向左移动的距离。所以tab stops的列表就是单调递增的列号列表,比如6,16,32,40,72,80。 -
谢谢,@markgz。有些东西像我这样的年轻计时器不会从书本中得到。