gpt4 book ai didi

c - 使用 printf 的 Linux 的 gotoxy() 实现

转载 作者:太空狗 更新时间:2023-10-29 16:41:19 26 4
gpt4 key购买 nike

我正在为 gcc 编译器寻找 gotoxy() 的替代品并找到了这个 -

void gotoxy(int x,int y)
{
printf("%c[%d;%df",0x1B,y,x);
}

我想知道它是如何工作的,我的意思是我们什么时候在 printf 中使用 [;0x1B 在那里做什么以及如何使用这段代码将光标移至行/列?

我从未在书中看到过这种 printf 的实践,所以如果你能给我指向一个链接,我可以在其中找到 printf 的此类用法,那就太好了。

最佳答案

这是使用 terminal escape codes定位光标。

"\x1B" 是转义符,它告诉您的终端接下来的内容并不意味着要打印在屏幕上,而是向终端(或很可能是终端仿真器)发出的命令

尾随的“f”表示您想要将光标强制定位在某处,由它前面的坐标指示。

Force Cursor Position   <ESC>[{ROW};{COLUMN}f

因此,如果您调用 gotoxy(4,2),它最终会发送转义序列 "(ESC)[2;4f",其中 ESC 是字节 0x1B

关于c - 使用 printf 的 Linux 的 gotoxy() 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8683526/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com