读书人

转义字符使用的小疑点(谭浩强c语言p49)

发布时间: 2012-05-20 16:03:12 作者: rapoo

转义字符使用的小问题(谭浩强c语言p49)
我是在虚拟机里面的red flag linux里面的kate和终端里面编译的

printf(" ab c\t de\rf\tg\n");这句的输出结果是
fab c gde;而不是
f gde;

但是书中讲的是应该按照下面的那种结果输出,也就是abc被覆盖掉了

所以我想问大家:
1.上面结果如何解释(我输出的事第1种而不是第2种)
2.编译器对于tab所经过的字符是跳过,让它原地不动,还是把它推后(我目前是这样的),还是把他覆盖?

我自己的编译器用tab的时候是把字符推后,但是上面的内容并没有把字符推后,也没有覆盖,不知为何?

[解决办法]
不是编译器的差别,差别在于终端。

[解决办法]
stty -tabs
输出就是
f gde

stty tabs
输出就是
fab c gde
[解决办法]
\r 回车符,在终端表示将光标移到当前行首,下一字符将从行首开始写,覆盖掉之前的字符。
[解决办法]

探讨

哎 还是没解决呀

读书人网 >C语言

热点推荐