gpt4 book ai didi

c - TUI 文本编辑

转载 作者:太空宇宙 更新时间:2023-11-04 03:24:20 24 4
gpt4 key购买 nike

使用 TERMCAP 例程(类似于“readline”库)读取一行文本并允许光标移动和编辑的 C 代码。问题是:当需要从行尾删除一个或多个字符时,更有效的方法是 (1),将光标移动到 EOL 并发出 \b\b 序列;或 (2),将光标移动到截断点并发出单个“删除到行尾”命令?不确定后一个命令有多“昂贵”,尤其是在宽终端上。有人知道权衡/准则是什么吗?

最佳答案

这取决于输出设备(终端),以及要删除的字符数。通常,如果设备一开始就支持删除到 EOL,那么它就会存在,因为它比执行一个或两个以上的删除单字符操作要快。

除非您在非常慢的连接上操作,否则这可能无关紧要。早在 80 年代,这种事情就引起了人们的关注,因为我们经常使用超过 1200bps 的连接等;这也是为什么人们经常避开 curses(3) 而直接使用 termcap 的原因。如今,通信和输出设备通常比用户的 react 时间快得多,您通常可以完全重绘屏幕。

出于好奇,为什么要使用 termcap?几十年前,它在大多数 UNIXy 平台上被 terminfo 所取代。更不用说 curses 等高级库的可用性了。

关于c - TUI 文本编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42464164/

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