打了好多字然后想电脑复制文字出现多字全部文字呢 碰了一下屏幕居然全部没有了 快要被气死啦。有什么办法可以恢复吗?

有一个用C语言编写的打字练习程序,这个程序能够在linux终端窗口下或者虚拟终端下使用。


运行这个程序,输入一串中文,当想删除一个已经输入的汉字时,出现一个问题:光标在屏幕
上显示删除了半个汉字,但实际上删除了一个汉字。我希望在显示上是删除一个汉字,请教一
下,这个问题怎么解决?
不会还是DOS的打字练习程序吧?

家境小康, 积分 1814, 距离下一级还需 186 积分

0
如果是图像的一半,去研究绘图的部分。
如果是一个乱码,应该是处理\b时,字符串的指针只回退1了吧。
终端程序的话, 解决方案要取决于终端。
比较通用的方法是清除最后一行,再输出\r,再输出最后一行
关于半个汉字,是这么回事,比如先输入了一个汉字“林”,接着按一下退格键(<back space>),这时会看到“林”字少了右边的一半,但左边的一半还在。

白手起家, 积分 24, 距离下一级还需 176 积分

0
这是许多许多年以前的问题了……

解决方案是识别相关编码,发现是汉字编码,那就每次删除两个字符。


汉字编码的标志是:第一个字节大于127.

能不能说得更详细一点,这样我就能够去修改了。
当使用者按下一个键的时候,应该用什么方法来接收他按下的键值?
如何获取光标之前的字符编码?
如何控制光标往回删除两个半角字符?
能不能说得更详细一点,这样我就能够去修改了。

这么问……看来你是直接用的scanf库函数?

这里有篇文章可能能帮到你:


我要回帖

更多关于 电脑复制文字出现多字 的文章

 

随机推荐