Linux下\r\n问题

    常在Linux下操作,难免要遇到\r\n问题,特别在很多地方比如最近的邮件发送,怎么都\r\n了,以前只有\n的时代好像已经过去了,因为我是一个比较喜欢总结的人,一个喜欢理论先行的人,所以,认真的测试并且理解了一番,尽管我个人认为是比较可以了,但,如果哪位高手看出了不妥之处,不吝赐教!大笑

 

一、例子

源文件:main.c

例一:

#include <stdio.h>

int main(void)

{

       printf("dddddd"); //6d

       printf("12345");

       return 0;

}

结果:空

 

例二:

       printf("dddddd\r");

       printf("12345 ");

结果:空

 

例三:

       printf("dddddd\n ");

       printf("12345 ");

结果:dddddd

 

例四:

       printf("dddddd\r");

       printf("12345\n");

结果:12345d

 

例五:

       printf("dddddd\r\n");

       printf("12345\n");

结果:dddddd

             12345

 

例六:

       printf("dddddd\n \r ");

       printf("12345\n");

结果:同五

 

例七:

       printf("dddddd\n \r ");

       printf("12345");

结果:dddddd

 

例八:

       printf("dddddd\n");

       printf("12345\r ");

结果:dddddd

 

例九:

       printf("dddddd\n");

       printf("12345\n\r ");

结果:同五

 

二、总结:

    根据上面九个简单而清楚的例子,以及我个人的一些理解,我就做个总结吧:

    1.回车换行符,是2个符。一个回车,一个换行。\r仅仅是回车,\n是换行。一个是控制屏幕或者从键盘的Enter键输入。另一个是控制打印机

    2.回车 = 光标到达最左侧,换行 = 移到下一行。如果只回车,打印的东西会覆盖同行以前的内容,如果只换行,打印的东西会在下一行的先一个位置继续。

    3.\r实际是回到行首。\n如果下一行已经有了一些内容的话它会在那些内容的后边.因为一般情况下下一行是没有数据的,很多时候\n也就成了\r\n作用一样。

    4.如果你也觉得好,那就顶起来吧,顺便说个好,大笑

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值