tri*_*ity 5 language-agnostic newline
想知道我们是否可以从右到左,从下到上进行打印......当我尝试编写一个程序来打印下面的方块时我有这个想法(输入'n',这里n = 4)
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
Run Code Online (Sandbox Code Playgroud)
这可以通过多种方式解决,通过存储到2D阵列并打印数组......(任何语言:Perl,C,C++,Java).
答案很长,你可以做终端支持的任何事情.有许多种终端(或"字符输出设备"),其中许多支持光标运动.(你可以看到 Termcap Library项目来创建一个不同终端类型的图片.)有一个终端命令用于向上移动一条线,所以基本上是的,你应该能够做到这一点.在使用termcap数据库后,我想出了以下内容:
$ printf "\n"; printf '\e[A'; echo Foo
Foo
Run Code Online (Sandbox Code Playgroud)
换句话说,\e[A字符串有一个非零的机会让你一行.在一些终端:)
这基本上是可能的。但不是在传统的基于线路的终端上。当访问基于屏幕像素时,很容易解决这个问题。至少在 ASCII 中没有定义与 \n 真正对应的东西。
或者也许可以通过将终端的输入法更改为某种从左到右、从下到上阅读的文化来存档。