clcl 发表于 2014-10-21 22:39:11

今天在看小甲鱼的视频,有一个地方没懂。求大神指点

视频有一段程序是这样的,就是看不懂结果,我知道\t这个是相当于电脑上的Tab,是横向跳到下一个制表位置。, \r跟\n是一样的意思,都是指回车换行的意思,\b是退格的意思,求大神讲解下结果是怎么出来的。谢谢

clcl 发表于 2014-10-22 10:20:04

大神们,怎么都只是在围观,没有一个帮我解决问题的啊???

仰望天上的光 发表于 2014-10-22 15:32:40

要么小甲鱼说错了,要么你理解错了
在很久以前,刚发明打印机的时候,
\r是 回车,指回到本行的行首
\n是换行。指光标到下一行的同列处。

也就是说,那时的 \r \n 联合表示现在所谓的“回车”

随着历史的发展,许多操作系统对于文本文件的换行倾向于用一个字符替代\r \n两个字符
也就是说,如果只出现\n,就表示原来的\r\n,而出现\r仍表示原来的回车(即回到本行行首)

Answer.zhang 发表于 2014-10-23 09:45:54

仰望天上的光 发表于 2014-10-22 15:32
要么小甲鱼说错了,要么你理解错了
在很久以前,刚发明打印机的时候,
\r是 回车,指回到本行的行首


{:1_1:}{:1_1:}我能说我是才知道吗?学习学习,加油加油!!!

wanjian 发表于 2014-10-23 10:00:56

\r回到行首,如果有,可以覆盖

风之残月 发表于 2014-10-23 10:20:23

printf("abc\tde\rf\n");
其中\t表示横向跳到下一制表位置, 一个制表位是多少可以设置,\r是回车,回到当前行首,\r后面的内容将会覆盖当前行内容,\n是换到当前行的下一行,所以结果是f abcde

printf("hijk\tL\bM\n");
\b是退格,相当于设置当前位置后退一格,如果\b前面还有内容将会覆盖前一个字符,所以L被删除了,所以结果是hijk    M

clcl 发表于 2014-10-23 11:46:11

仰望天上的光 发表于 2014-10-22 15:32
要么小甲鱼说错了,要么你理解错了
在很久以前,刚发明打印机的时候,
\r是 回车,指回到本行的行首


3Q:big

clcl 发表于 2014-10-23 11:46:49

风之残月 发表于 2014-10-23 10:20
printf("abc\tde\rf\n");
其中\t表示横向跳到下一制表位置, 一个制表位是多少可以设置,\r是回车,回 ...

谢谢,你的回答很详细。

挥舞乾坤 发表于 2014-10-27 16:58:55

视频早看过了,完全不记得有这样一段了。。白看了:dizzy:

clcl 发表于 2014-10-28 15:08:26

挥舞乾坤 发表于 2014-10-27 16:58
视频早看过了,完全不记得有这样一段了。。白看了

哈哈,那你回头再看一边,妥妥的

大个的糖果 发表于 2014-10-30 17:29:07

页: [1]
查看完整版本: 今天在看小甲鱼的视频,有一个地方没懂。求大神指点