为了账号安全,请及时绑定邮箱和手机立即绑定

Windows回车返回\ r \ n是由两个字符还是一个字符组成?

/ 猿问

Windows回车返回\ r \ n是由两个字符还是一个字符组成?

Windows回车\r\n\n在Unix中时,被\r\n视为两个字符吗?



查看完整描述

3 回答

?
一只萌萌小番薯

这是两个字符:

  • \r 是回车;

  • \n 是换行符。

两个字符组合起来代表Windows上的新行。而在Linux上,则\n代表了换行符。它将光标移动到Linux上新行的开头。在Windows上,光标将停留在控制台的同一列,但在下一行。

\r在Linux上的效果与在Windows上的效果相同:将光标移至该行的开头。可以在\r代替的同一行上打印不同的信息\n


查看完整回答
反对 回复 2019-11-15
?
123456qqq

实际上\r is 0x0D (^M) and \n is 0x0A (^J),但是.....在Windows上:


\n will write 0x0D 0x0A

在Unix上:


\r will write 0x0D

\n will write 0x0A


查看完整回答
反对 回复 2019-11-15
?
桃花长相依

取决于设置。\r\n是两个字节宽(在ASCII,UTF-8,等等),但是I / O库如C'S stdio库和其他人,在文本模式下操作时,可能会之间进行转换\n和\r\n准透明。


即,在Windows平台上,一个C程序读取文本模式流txt_in与


while ((c = getc(txt_in)) != EOF)

    printf("%02x\n", c);

不会报告的ASCII码\r。相反,putc('\n', txt_out)实际上将写入\r\n文本模式流txt_out。


查看完整回答
反对 回复 2019-11-15
  • 3 回答
  • 0 关注
  • 67 浏览
我要回答

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信