printf() 语句中出现的终端代码\033[E 和\033[07 的含义?
Meanings of terminal codes \033[E and \033[07, which appear in printf() statements?
在 Game of Life 程序的 C 实现中,如 here the codes I mentioned appear in the show()
function. I can't find any information at all about what 033[E
means and as for 3[07
this is usually a color code in linux bash terminal, where with 3[07m we begin the color coding and with 3[m we end the predefined color coding. However, according to this 网站所示,它表示 "reverse"。我不确定那是什么意思。
我对 3[E
代码更感兴趣,但我找不到相关信息。通过在 Linux bash 上使用 gcc 测试和调试程序,我发现如果没有此命令,输出不会按预期显示。如果有人可以分享这方面的知识,我将不胜感激。提前致谢。
序列 ESC [ E
是该来源中的一个错误——或者可能是一个超级正确的版本。代码为ESC E
,作用是将光标移动到the next line。 [
表示它可以带一个可选的数值参数(零或更多),在这种情况下有none,所以它可以省略。 (数字参数表示要跳过多少行;0
或 1
显示常规换行符,较高的值使其跳过行。)
这个定义很难找到,因为在终端程序中通常只使用 \n
——常规的换行代码——将光标移动到下一行的开头。
序列ESC [07m
还包含一个冗余代码,ESC [7m
足以让终端进入反向模式。您可能习惯于将此添加到颜色序列的开头,因此您可以设置文本的 前景色 (来自 30..37
的数字)而不是 背景 (40..47
),并用空格画出彩色块。
在 Game of Life 程序的 C 实现中,如 here the codes I mentioned appear in the show()
function. I can't find any information at all about what 033[E
means and as for 3[07
this is usually a color code in linux bash terminal, where with 3[07m we begin the color coding and with 3[m we end the predefined color coding. However, according to this 网站所示,它表示 "reverse"。我不确定那是什么意思。
我对 3[E
代码更感兴趣,但我找不到相关信息。通过在 Linux bash 上使用 gcc 测试和调试程序,我发现如果没有此命令,输出不会按预期显示。如果有人可以分享这方面的知识,我将不胜感激。提前致谢。
序列 ESC [ E
是该来源中的一个错误——或者可能是一个超级正确的版本。代码为ESC E
,作用是将光标移动到the next line。 [
表示它可以带一个可选的数值参数(零或更多),在这种情况下有none,所以它可以省略。 (数字参数表示要跳过多少行;0
或 1
显示常规换行符,较高的值使其跳过行。)
这个定义很难找到,因为在终端程序中通常只使用 \n
——常规的换行代码——将光标移动到下一行的开头。
序列ESC [07m
还包含一个冗余代码,ESC [7m
足以让终端进入反向模式。您可能习惯于将此添加到颜色序列的开头,因此您可以设置文本的 前景色 (来自 30..37
的数字)而不是 背景 (40..47
),并用空格画出彩色块。