ASCII字符

时间:2012-01-22 08:46:12

标签: c

我正在做一个家庭作业,我需要打印到控制台和一个文本文件,数字0-255以及与它们一起的Hex和Ascii。

作业的主要重点是学习格式和文件处理。

我已经通过使用宽度找出所有漂亮的格式,我可以将文件打印到文件没问题。

我正在%d %X %c使用printf()

我的烦恼是,ASCII 11,12和13(???)类似于tab,lf和其他一些非图像char。

这完全搞砸了这两行,我对这样的东西很肛门。

是否有一种快速简便的方法可以让其他内容显示出来,而不会影响我的列和行,或者我需要输入if - 语句并自行过滤这些人吗?

3 个答案:

答案 0 :(得分:4)

您需要过滤掉自己不想打印的内容。

要获得帮助,请查看isgraph和其他is*函数。他们应该很好地帮助你。

答案 1 :(得分:1)

大多数底部字符不可打印。你必须打印别的东西。我能想到的最好的事情是为最低的32个字符创建一个字符串数组,这是有问题的,并从那里打印最低的32,而你使用普通打印(但是,你需要某种if)。

答案 2 :(得分:1)

这些字符称为"Control Characters",如果只为它们分配一个字符空间,则很难打印。

您应该能够通过拨打iscntrl()来捕获所有这些内容并在其位置打印更方便的内容。