Linux控制台输出被ASCII字符损坏

时间:2012-07-10 10:52:59

标签: linux console debian console-application

我正在Debian上使用C ++实现一个软件项目。当我在debian盒子上执行独立二进制文件时,程序运行正常至少15-20分钟,但一段时间后控制台输出就会损坏。我看到大多数字符都有很多ASCII字符,但有些字符显示正常,因此输出几乎不可读。如果我按CTRL + C并停止执行,我在命令行输入的内容也会显示为奇怪的ASCII字符。如果我重新启动盒子并重新开始,一切都可以正常工作15-20分钟然后同样的事情发生。有没有人知道这里会发生什么? Debian box只支持命令行支持GUI。

2 个答案:

答案 0 :(得分:1)

听起来你在某些时候打印了一些不需要的字符。我认为您可能在管理用于字符串的内存时遇到问题。尝试在valgrid下运行程序。您可以关注this tutorial。你应该期待有关从未初始化的内存中读取的警告。

答案 1 :(得分:0)

我不认为你在这里正确使用“ASCII”。考虑到ASCII在0-127范围内的事实,在该范围内没有太多“怪异”的东西。我之前见过这种情况,通常是因为转义字符被解释为显示代码。我对此有点模糊 - 我在很长一段时间内没有完成控制台的工作。但我很确定它与实际超出ASCII范围的原始输出有关。