我现在坐在K& R C编程语言上。我在1号练习1-8上叠加了 锻炼它自己。
编写一个程序,用三个字符的顺序替换每个标签>,退格, - ,女巫打印为→,每个退格由类似的←。这使标签和退格显示。
据我所知,练习让我在标签和退格中指向箭头。但我不知道如何在C中剪辑2个字符 这是自己的程序
#include <stdio.h>
main ()
{
int c;
while ((c=getchar()) !=EOF)
{
if (c == '\t')
printf(">->->\b");
if (c == '\b')
printf("<-<-<-\b");
if (c !='\t')
if (c !='\b')
putchar(c);
}
getchar();
}
那么我的错误在哪里可以帮助我?
答案 0 :(得分:1)
所需的序列是
>\b-
请注意,这可能不适用于现代终端仿真程序,因为大多数都不支持叠印字符。最初的想法是模仿旧的打字机技术,打印一个角色,用一个角色支撑头部,并在前一个角色上面击打另一个角色。
如果您的终端支持UTF-8,您可以替换&#39;→&#39; Unicode字形(U + 2192 RIGHTWARDS ARROW),以UTF-8编码为
\xe2\x86\x92
同样,&#39;←&#39; (U + 2190)是
\xe2\x86\x90