手机版
你好,游客 登录 注册
背景:
阅读新闻

C语言基础教程 printf( )函数中的回车‘\r’与回车换行'\n'

[日期:2018-12-31] 来源:Linux社区  作者:ylm1521 [字体: ]

今天完成了初级阶段的学习,其实以前在开发单片机的时候用过C语言,但是没有系统的学过,所以再次学习感觉能够查缺补漏。

C语言中的printf( )函数是一个很重要的函数。printf( )中的字符包含了三种:

(1)以%开头的格式控制字符

(2)以 \ 开头的转义字符

(3)普通字符

在printf函数中一旦出现格式控制字符%和转义字符 \  ,他们会立即寻找后面紧跟着的字符进行组合。这里我进行了简单总结:

#格式控制符#

%i---输出一个整型数;

%d---输出一个整型数;

%f---输出一个浮点数;

%e---输出一个浮点数,科学计数法;

%g---输出一个浮点数,当指数小于-4或者大于5,则运用科学计数法,否则正常显示浮点数;
%c---输出一个字符;
%o---输出一个八进制的整型数,前面不带0;
%#o---输出一个八进制的整型数,前面带0;
%x---输出一个十六进制的整型数,前面不带0x;
%#x---输出一个十六进制的整型数,前面带0x, 如果x大写,则显示的时候也是大写。
%u---不带符号的十进制整数。
%%---输出一个%。

#转义字符#

\n        回车换行

\t        横向跳格(相当于tab)

\v        竖向跳格(打印机专用)

\r        回车

\f        换页(打印机专用)

\b        退格(相当于backspace)

\\        反斜杠字符\

\'        单引号 '

\"        双引号“

\ddd        以八进制形式代表的ASCII字符

\xhh        以十六进制形式代表的ASCII字符

\0        空值

 

下面是本次感悟的重点:\n \r 这两个转义字符的具体含义:

(1)二者都有“回车”的意思,那么“回车”是什么意思呢?如果能搞清楚回车的含义,就可以很清楚知道这两个转义字符的区别了。

回车这个词,其实是来源于针式打字机(一些谍战片能看到,例如《北平无战事》第44集)如下图:




最后一张图中那个装铸造字体的机构就叫字车,因为它还要左右移动,象固定在轨道上的车一样,故称为字车

打字的时候,字车由左向右移动,打完一行,要将字车回到最左边,这个过程可以理解为“回车”,所以回车的意思就是将字车回到首列。而如果要继续打字,就要将字车移到下一行,继续从左到右,一个一个打字。

现代计算机语言中延续了“回车”的概念,而以前打字机的字车的概念等同于现在的屏幕上光标,所以科学家在设计C语言时,采用了“回车”的这种概念:

‘\r’就是将光标移到本行的首列。

回车换行的‘\n’就是将光标移到本行首列以后换行(移到下一行)。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-12/156119.htm

linux
相关资讯       C语言回车换行  C语言换行 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款