\r,\n,\r\n意义及区别
来源:互联网 发布:网络发短信平台 编辑:程序博客网 时间:2024/06/01 16:13
在ASCII码中,从 0~31(十进制)的字符为控制字符,它们都是看不见的字符,不能在显示器上显示,也没法书写(在键盘上找不到对应的按键,只能通过特殊方式输入,如ctrl+d表示EOF),只能以转义字符的形式来表示。不过,直接使用ASCII码值记忆不方便,针对常用的控制字符,C语言又定义了简写方式,完整的列表如下:
ok,本篇的重点是\r,\n,\r\n意义及区别,\r和\n的意义上面已经写了:
1. \r(return),回车(CR,Carriage-Return) ,将当前位置移到本行开头,ascii值为0x0d
2. \n(new line),换行(LF,Line-Feed),将当前位置移到下一行开头,ascii值为0x0a
在Windows中:
1.’\r’ 回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖;
2.’\n’ 换行,换到当前位置的下一行行首;
Unix系统里,每行结尾只有“”\n”;Windows系统里面,每行结尾是”\r\n”;Mac系统里,每行结尾是”\n”;一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾会多出一个^M符号。^M表示按住ctrl+M输出的字符,在Mac系统中表示\n.在Mac系统中按回车键,输出的其实是\n.
验证代码如下:
#include <stdio.h>int main(){ char ch; while(1){ ch = getchar(); if(ch == '\r'){ printf("按下enter键输出\\r"); }else if(ch == '\n'){ printf("按下enter键输出\\n"); } }}//运行该程序,分别按下enter键和control+m键,输出结果如下://按下enter键输出\n//按下enter键输出\n//备注:该程序在mac系统上执行
阅读全文
0 0
- \r,\n,\r\n意义及区别
- \r\n的意义
- \r\n \n 区别
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r \n \r\n的区别
- '\n' , '\r' , '\n\r' 的区别?
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r\n和\n\r的区别?
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r,\n,\r\n的区别
- \r \n \r\n的区别
- \r,\n,\r\n的区别
- truffle serve 发生异常解决办法
- 斗地主(深搜+贪心+剪枝)
- prometheus+grafana构建应用监控(一)
- 友盟集成第三方步骤(微信、QQ、微博)
- 测试流程?项目管理流程?
- \r,\n,\r\n意义及区别
- C# Encoding.GetEncoding 编码列表
- Restore Points Gym
- eureka 1.8.0 学习笔记
- 递归调用栈
- Google相似图片搜索原理
- [java]归并排序
- 文章标题
- Netty4.x用户指导(1)3个HelloWorld小例子