精华内容
下载资源
问答
  • 换行符\n和回车符\r

    2016-09-18 15:39:00
    “在c语言中,对一个不知道大小的文件进行读操作,我用fread()将文件的内容先放到一个缓存区,然后将缓存区中的内容打印出来, 缓存区中的内容和文件中的内容不一样,好像是因为缓存区的空间比存储文件内容所...

      问题始于社区的一个帖子,楼主的问题如下:


              “在c语言中,对一个不知道大小的文件进行读操作,我用fread()将文件的内容先放到一个缓存区,然后将缓存区中的内容打印出来,

    缓存区中的内容和文件中的内容不一样,好像是因为缓存区的空间比存储文件内容所需要的空间大了,不知道应该怎么解决”


             这个问题我之前也碰到过,翻了一些C语言文件操作方面的资料,发现对于换行的处理,其实是一个从打字机时代就有的历史遗留问题:


             “在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打

    完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。 于是,研制人员

    想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,

    告诉打字机把纸向下移一行。 ”


            在计算机出现之后,这种概念又被移植到了计算机操作系统上。当然,对于是否移植这一点也是有争议的,Windows和Unix/Mac系统在这一点

    上就分道扬镳了。


            下面首先讨论在Windows平台下的情况。


            Windows平台采用了历史的概念,在文件中,换行被处理为“\r\n”两个字符,也就是说,虽然用户只敲了一次回车键,但其实系统

    会认为收到了“\r\n”两个字符,并同时存储了这两个字符。


            因此,在Windows平台下,文件为了存储一次换行会写入两个字符。当程序员试图从文件中读取文件内容时,C语言提供了两种方式:文本方

    式和二进制方式,这两种方式又有什么区别呢?


            在Windows平台下,采用文本方式打开一个文件时,会自动将一次换行,即“\r\n”两个字符转换成一个“\n”字符,即会去掉一个“\r”

    字符,这种转换的结果就是:实际读取的数据长度会比文件的真实长度短,两者之差等于文件中的换行次数。而当采用二进制方式打开

    一个文件时,由于二进制方式打开的特点是有什么读什么,因此,“\r\n”两个字符会原封不动,均被读取,因而实际读取的数据长度与

    原文件长度相同。


            由于这种区别的存在,推荐大家在读取文件时采用二进制方式,文件中是什么内容,读取到的就是什么内容。


            那么,在Unix平台下呢?

     

            Unix/Mac平台并没有采用Windows平台的方式,在Unix/Mac中,每一行的结尾只有一个换行符,即“\n”,因此,Unix/Mac平台下两种读取方式

    是不会有区别的。


            一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,

    某些文本编辑器可能在每行的结尾会多出一个^M符号。

     


     

    转载于:https://www.cnblogs.com/sjxbg/p/5881829.html

    展开全文
  • 问题始于社区的一个帖子,楼主的问题如下: “在C语言中,对一个不知道大小的文件进行读操作,我用fread()将文件的内容先放到一个缓存区,然后将缓存区中的内容打印出来, 缓存区中的内容和文件中的内容不一样,...

    转自crazyingbird
    问题始于社区的一个帖子,楼主的问题如下:

    “在C语言中,对一个不知道大小的文件进行读操作,我用fread()将文件的内容先放到一个缓存区,然后将缓存区中的内容打印出来,缓存区中的内容和文件中的内容不一样,好像是因为缓存区的空间比存储文件内容所需要的空间大了,不知道应该怎么解决”

    这个问题我之前也碰到过,翻了一些C语言文件操作方面的资料,发现对于换行的处理,其实是一个从打字机时代就有的历史遗留问题:

    “在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。 于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。 ”

    在计算机出现之后,这种概念又被移植到了计算机操作系统上。当然,对于是否移植这一点也是有争议的,Windows和Unix/Mac系统在这一点上就分道扬镳了。 下面首先讨论在Windows平台下的情况。Windows平台采用了历史的概念,在文件中,换行被处理为“\r\n”两个字符,也就是说,虽然用户只敲了一次回车键,但其实系统会认为收到了“\r\n”两个字符,并同时存储了这两个字符。因此,在Windows平台下,文件为了存储一次换行会写入两个字符。当程序员试图从文件中读取文件内容时,C语言提供了两种方式:文本方式和二进制方式,这两种方式又有什么区别呢?在Windows平台下,采用文本方式打开一个文件时,会自动将一次换行,即“\r\n”两个字符转换成一个“\n”字符,即会去掉一个“\r”字符,这种转换的结果就是:实际读取的数据长度会比文件的真实长度短,两者之差等于文件中的换行次数。而当采用二进制方式打开一个文件时,由于二进制方式打开的特点是有什么读什么,因此,“\r\n”两个字符会原封不动,均被读取,因而实际读取的数据长度与原文件长度相同。由于这种区别的存在,推荐大家在读取文件时采用二进制方式,文件中是什么内容,读取到的就是什么内容。

    那么,在Unix平台下呢?Unix/Mac平台并没有采用Windows平台的方式,在Unix/Mac中,每一行的结尾只有一个换行符,即“\n”,因此,Unix/Mac平台下两种读取方式是不会有区别的。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,某些文本编辑器可能在每行的结尾会多出一个^M符号。

    展开全文
  • 每次使用Word写完一篇文章后都会有无数个换行符,感觉非常影响整理美观,特别是在阅读的时候,看到这些换行符都很烦人。到底该如何去掉这些碍眼的换行... 批量删除换行符方法 回车符有两种,“硬回车”和“软回车...

    每次使用Word写完一篇文章后都会有无数个换行符,感觉非常影响整理美观,特别是在阅读的时候,看到这些换行符都很烦人。到底该如何去掉这些碍眼的换行符呢?下面Word联盟针对目前最流行的Word2003、Word2007、Word2010这三个版本,来教大家如何删除换行符!

      提示:Word中的换行符只是障眼法,在打印的时候是不会显示出来的!

      批量删除换行符方法

      回车符有两种,“硬回车”和“软回车”。硬回车是直接敲键盘上的回车,软回车是按键盘上的“ Shift+回车 ”。

    硬回车 软回车

      首先,使用快捷键“ Ctrl + H ”替换功能;

      如果要替换软回车(垂直向下的箭头),在“查找内容”里面输入^l,如果是替换硬回车(向下再左转的箭头),在“查找内容”里面输入^p,“替换为”里面不输入任何字符,然后点击“全部替换”,就可以删除整个文档里面的软回车或硬回车了。

    批量删除换行符

      Word2003中隐藏换行符

      在Word2003中有两个方法可以轻易的删除换行符:

      方法一、单击Word菜单栏的“视图”,在下拉列表中将“显示段落标记”前面的钩取消即可!(如下图)

    显示段落标记

      方法二、点击菜单栏的“工具”中的“选项”,进入“视图”窗口将“段落标记”前面的钩去掉,然后确定就OK了!

    段落标记

      Word2007隐藏换行符方法

      单击“Office按钮”,进入“选项”,在弹出的“Word选项”窗口中选择左边的“显示”,然后在右边第二栏的“始终在屏幕上显示这些格式标记”下面将“段落标记”前面的钩去掉,确定即可。

    去掉换行符

      Word2010中隐藏换行符技巧

      单击“文件”,选择左边下面的“选项”,在弹出的“Word选项”中“显示”中将“段落标记”前面的钩去掉,和Word2007中的方法相似。

      阅读本文的人还感兴趣
      Word2003调整东亚文字的换行符
      Word2003使用另一种语言时,文本换行符在错误的位置
      关于word文字换行问题
      Excel2003基础教程:样式列表,快速换行
      Excel表格怎么设置自动换行

    转载于:https://www.cnblogs.com/mfryf/archive/2013/05/27/3101341.html

    展开全文
  • 在cmd(命令提示符)中怎样换行在CMD下,可以用^作为换行符 比如: dir ^ /p 也就是完dir ^按回车,然后接着/p批处理语句里面换行符或者回车符怎么写?我想把一个字符串里所有空格都转换成换行符,也就是打印出来是...

    在cmd(命令提示符)中怎样换行

    在CMD下,可以用^作为换行符 比如: dir ^ /p 也就是打完dir ^按回车,然后接着打/p

    批处理语句里面换行符或者回车符怎么写?

    我想把一个字符串里所有空格都转换成换行符,也就是打印出来是一个子字一般是用for命令(遇空格或其它分隔符如逗号分号等就会换行,除非是位于引号之中的)如下面的代码: @echo off set "a=abc def ghi" for %%i in (%a%) do echo %%i pause 扩展资料: cmd命令

    certmgr.msc证书管理实用程序 3

    setDCONTENT=123123123123setDCONTENT=123123123123他输出后老是一排我要的效果是123123123123的效果怎么换行

    cmd命令的输出写入到一个ini文件中,怎样换行啊?

    下面图片怎么换行的 如果不是换行的问题告诉我怎样做到的好嘛

    windows的命令行是不支持换行的

    用cmd的批处理来删除一个txt中的所有回车符或者换步骤 1 2 3 4 从网上复制过来的文字,有很多都充满无用的换行符、回车符或者多出很多空行,要想批量删除它们,可以用word的替换,在“需要替换的内容”中选择“特殊符号”就可以看到。 工具/原料 现在有一款小巧的记事本软件“文本排版大师”专门提供

    展开全文
  • API提取链接是否正常,能否正常将代理IP提取出来,很多软件第一步设置不对,IP根本提取不出来,或者API返回格式不符合要求,也有很多朋友的代码处理IP的分隔不对,曾经有些用户,每次使用代理IP都是第一条能成功,...
  • 问题始于社区的一个帖子,楼主的问题如下:“在c语言中,对一个不知道大小的文件进行读操作,我用fread()将文件的内容先放到一个缓存区,然后将缓存区中的内容打印出来,缓存区中的内容和文件中的内容不一样,好像是...
  • 上次无意间了一个全角空格,怎么都编译不过去,而且看不出来。无奈只好重新写一遍。 四。循环嵌套时不要起相同的变量名。 五。声明变量时尽量声明的有意义,比如对应英文单词的缩写或汉语拼音的缩写...
  • Virtual PC 入门教程

    2010-06-22 23:19:43
     (1)把宽带连接共享出来:打开宽带连接的属性页,切换到"高级"标签,把"Internet 连接共享"几项都上勾.  (2)设置网卡属性:本地连接-属性-Internte 协议 (TCP/IP)-属性  IP地址:192.168.0.1  ...
  • 在各个章节的文字都排好后,设置第一章的页眉(若连页眉都不知怎么加,请参考Word帮助)。然后跳到第一章的末尾,菜单栏上选“插入︱分隔”,分节类型选“下一页”,不要选“连续”(除非你想第二章的标题放在第...
  • 我输入abc了一个回车确认输入,abc应该是个字符串,字符串结尾不是又一个'\0'的结尾嘛,那这多出来的循环或许就是它了。 于是,我把判断符号由文件结尾EOF(ctrl +...
  • 我们已经提到了怎么重复单个字符(直接在字符后面加上限定就行了);但如果想要重复多个字符又该怎么办?你可以用小括号来指定子表达式(也叫做分组),然后你就可以指定这个子表达式的重复次数了,你也可以对子...
  • 你必须知道的495个C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    2.19 程序运行正确,但退出时却“coredump”(核心转储)了,怎么回事? 联合 2.20 结构和联合有什么区别? 2.21 有办法初始化联合吗? 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? 枚举 2.23 枚举...
  • 打印:可以把您漂亮的页面打印出来哦。不过,如果要打印,建议别像polaris一样用黑底白字。 链接:建议改为polaris这样。这个主要对网址和邮箱等起作用了,配成与polaris一样后,双击网址会调用默认浏览器打开,双击...
  • 2.19 程序运行正确,但退出时却“core dump ”(核心转储)了,怎么回事? 29 联合 30 2.20 结构和联合有什么区别? 30 2.21 有办法初始化联合吗? 30 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? ...
  • 《你必须知道的495个C语言问题》

    热门讨论 2010-03-20 16:41:18
    2.19 程序运行正确,但退出时却“core dump ”(核心转储)了,怎么回事? 29 联合 30 2.20 结构和联合有什么区别? 30 2.21 有办法初始化联合吗? 30 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? ...
  • o 3.14 程序运行正确, 但退出时却 ``core dump''了,怎么回事? o 3.15 可以初始化一个联合吗? o 3.16 枚举和一组预处理的 #define 有什么不同? o 3.17 有什么容易的显示枚举值符号的方法? * 4. 表达式 o...
  • C#微软培训资料

    2014-01-22 14:10:17
    7.4 关系操作和关系表达式.65 <<page 2>> page begin==================== 7.5 逻辑操作和逻辑表达式.68 7.6 位 运 算 .69 7.7 其它特殊操作 .72 7.8 小 结 .77 第八章 流 程 控 制 .79 8.1 ...
  • 2.19 程序运行正确,但退出时却“core dump ”(核心转储)了,怎么回事? 58 联合 59 2.20 结构和联合有什么区别? 59 2.21 有办法初始化联合吗? 59 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? 59 ...
  • 2.19 程序运行正确,但退出时却“core dump ”(核心转储)了,怎么回事? 58 联合 59 2.20 结构和联合有什么区别? 59 2.21 有办法初始化联合吗? 59 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? 59 ...
  • C#微软培训教材(高清PDF)

    千次下载 热门讨论 2009-07-30 08:51:17
    7.2 算术操作和算术表达式.59 7.3 赋值操作和赋值表达式.64 7.4 关系操作和关系表达式.65 <<page 2>> page begin==================== 7.5 逻辑操作和逻辑表达式.68 7.6 位 运 算 .69 7.7 ...
  • 2.19 程序运行正确,但退出时却“coredump”(核心转储)了,怎么回事?  联合  2.20 结构和联合有什么区别?  2.21 有办法初始化联合吗?  2.22 有没有一种自动方法来跟踪联合的哪个域在使用?  枚举  2.23...
  •  2.19 程序运行正确,但退出时却“coredump”(核心转储)了,怎么回事? 联合 2.20 结构和联合有什么区别? 2.21 有办法初始化联合吗? 2.22 有没有一种自动方法来跟踪联合的哪个域在使用? 枚举 2.23 ...
  • 1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
  • 最新Java面试宝典pdf版

    热门讨论 2011-08-31 11:29:22
    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
  • Java面试宝典-经典

    2015-03-28 21:44:36
    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...
  • Java面试宝典2010版

    2011-06-27 09:48:27
    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\...

空空如也

空空如也

1 2 3
收藏数 48
精华内容 19
关键字:

回车符怎么打出来