深入解析Linux下\r\n的问题
所属分类:
软件编程 / C 语言
阅读数:
74
收藏 0赞 0分享
常在Linux下操作,难免要遇到\r\n问题,特别在很多地方比如最近的邮件发送,怎么都\r\n了,以前只有\n的时代好像已经过去了,因为我是一个比较喜欢总结的人,一个喜欢理论先行的人,所以,认真的测试并且理解了一番,尽管我个人认为是比较可以了,但,如果哪位高手看出了不妥之处,不吝赐教!
一、例子
源文件:main.c
例一:
#include <stdio.h>
int main(void)
{
printf("dddddd"); //6个d
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作用一样。
实例讲解C语言编程中的结构体对齐
这篇文章主要介绍了C语言编程中的结构体对齐,值得注意的是一些结构体对齐的例子在不同编译器下结果可能会不同,需要的朋友可以参考下
收藏 0赞 0分享
详解C语言的结构体中成员变量偏移问题
这篇文章主要介绍了C语言的结构体中成员变量偏移问题,以讲解如何编写宏来对成员变量进行修改为主,需要的朋友可以参考下
收藏 0赞 0分享
详解C语言结构体中的函数指针
这篇文章主要介绍了详解C语言结构体中的函数指针,文中对函数指针的基本概念也有讲解,需要的朋友可以参考下
收藏 0赞 0分享
C++编程中的函数指针初步解析
这篇文章主要介绍了C++编程中的函数指针初步解析,函数指针在C语言和C++学习中都是非常重要的知识,需要的朋友可以参考下
收藏 0赞 0分享
实例解析C++中类的成员函数指针
这篇文章主要介绍了C++中类的成员函数指针,例子中以讨论用函数指针调用类的成员函数为主,需要的朋友可以参考下
收藏 0赞 0分享
C语言中的函数指针基础学习教程
这篇文章主要介绍了C语言中的函数指针基础学习教程,包括函数指针作为参数来传递等重要知识,需要的朋友可以参考下
收藏 0赞 0分享
详解C语言编程中的函数指针以及函数回调
这篇文章主要介绍了C语言编程中的函数指针以及函数回调,函数回调实际上就是让函数指针作函数参数、调用时传入函数地址,需要的朋友可以参考下
收藏 0赞 0分享
C语言中的函数指针学习笔记
这篇文章主要介绍了C语言中的函数指针的一些学习知识点记录,文中作者整理了一些比较interesting的函数指针用法,需要的朋友可以参考下
收藏 0赞 0分享
查看更多