首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

回车与换行的故事

以前在学汇编的时候,一直不知道老师在换行时,总会打一个换行符和回车符,原来他们还有这么一个故事…....为了解决这个字符丢失的问题,研制人员就在每行的后面添加了两个表示一行结束的字符:一个叫回车(carriage return),相当于告诉打字机,把光标在水平方向上移到最左边;一个叫换行(line feed...这就是回车和换行的由来。 后来,计算机出现了,这两个概念也被拿了过来。但是那时候储存设备非常昂贵,一些人认为用两个字符用来表示一行的结尾非常浪费,于是产生了分支,不同的厂商有不同的处理方法。...在这些操作系统中,Unix操作系统每行结尾只有换行,即”\n”;Windows则是回车+换行,即“\r\n”;而Mac系统里则使用回车来代表结尾,即“\r”。...正是这个原因,才会导致我们有时用Windows系统来打开Unix/Mac系统的文件时,会出现所有文字变成一行的情况,而用Unix和Mac系统打开Windows系统的文件时,在每一行的结尾会多出一个 ^M

1.9K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    怎样区分条码枪输入后触发的回车与键盘回车

    今天在做条码枪扫描商品条码来选择商品时,发现有一个矛盾:条码枪其实是模拟键盘事件的:先模拟敲击键盘,输入它所扫描到的条码,在输入完毕后,再模拟敲击键盘的回车事件。...在经过一些思考与尝试后,用以下的办法解决了,这里先说一下思路,代码稍后整理一下再贴上来:在扫描枪扫描一个条码后,触发的事件中,条码文本框本身的回车事件是会先触发的,继而再到页面的回车事件触发。...最初的想法是在文本框的回车事件响应方法中中止整个页面的事件监听,不过试过多个方法,发现无效,所以只有想一些HACK出来解决了。嘿嘿。...当鼠标焦点在条码输入框的时候,它的值一定是空的,而当它失去焦点时,我们可以人为让它的值为空,再当页面的回车触发时,我们就可以通过条码输入框的值是否为空也判断本次回车空间是由条码枪触发还是由用户按键盘触发了...先判断条码录入框的值是否为空,如果为空,就直接return了,如果非空的话,证明当前回车不是由条码枪触发的,可以尝试进行表单的提交操作,这样就OK啦。

    2.6K10

    Linux命令行的一个小实验(回车和换行)

    这是个很有趣的规律,因为通常Enter换行后都会从行首开始输出,而这个却只是简单的下移了一行,但如果你跟回车(CR)和换行(LF)的概念关联起来就说的通了。...换行,英文为Line Feed,缩写为LF [打字机] 而我们所遇到的情况类似与只换行而并未回车。...我们可以通过向该终端进程的stdin写入\r或\n来实现。 首先我们获取当前shell的pid(echo $$),然后通过stty raw命令将其设置为我们需要的模式,顺便按几下回车验证一下。...再在来测试一下\r回车: [iwjzw6rnyw.png] [a1yrofq6ye.png] 可以看到,字母直接打印再当前行的开头,因为回车只是将打印头移动到当前行的首位,如果此时我们再来一个回车和一些字母的话...,还是要\r\n: [djcdqv6sml.png] [07hfj2w1hm.png] 最后,这样做并没有太大的意义,只是让我们更直观的了解到回车和换行的区别。

    7.2K60

    回车和换行

    今天,我总算搞清楚"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别了。...要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。 于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。...一个叫做"回车",告诉打字机把打印头定位在左边界;另一个叫做"换行",告诉打字机把纸向下移一行。 这就是"换行"和"回车"的来历,从它们的英语名字上也可以看出一二。...Unix系统里,每行结尾只有"",即"\n";Windows系统里面,每行结尾是"回车>",即"\r\n";Mac系统里,每行结尾是"回车>"。...一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。 (完)

    3.1K50

    linux两个好玩的漏洞:长按回车绕过+按28次Backspace键

    第一个漏洞,也是最近出的 一:Linux爆新漏洞,长按回车键70秒即可获得root权限 按住回车70秒,黑客就在linux系统绕过认证,从而获取root权限,并能远程控制经过加密的linux系统。...Cryptsetup是在Linux统一密钥设置(Linux Unified Key Setup, LUKS)中用来加密磁盘的软件,而LUKS则是Linux系统中标准的磁盘加密。 ?...也就是说,如果你重复93次输错密码,或者持续按回车键大概70秒,你就能够获得root initramfs (initial RAM filesystem) shell。...这个漏洞的影响范围包括Debian, Ubuntu, Fedora和其他一些Linux发行版本。Arch Linux和Solus用户不受影响。...解决方案 尽管漏洞能轻易触发并且影响范围大,但它的修复方案也异常简单: 首先,在LUKS密码提示窗处按压回车键70秒,检查系统是否存在漏洞。 如果存在漏洞,检查下你所使用的Linux是否发布了补丁。

    1.7K60

    ABAP 如何控制Dialog中的键盘(回车)功能

    Form FRM_ENTER *&---------------------------------------------------------------------* * 按回车键引发的动作...若修改,用户回车后判断日期格式 * 是否正确,若不正确光标停留在“拣配日期”项目上等待用户修改;若正 * 确光标跳到“仓库”项目上。...用户可修改,修改后按回车,系统需要判断用户输入的 * 库存地点代码是否在“仓管员信息表”里,若不存在提示错误信息(您没有操 * 作该仓库的权限)。...WHEN \'W_2100-SELE\'. * 请选择——用户在该项目上输入屏幕上可供选择的菜单项编号,回车后系统判 * 断输入的内容是否存在对应菜单编号,若不存在光标停留在“请选择”项目 *...上,并选中输入的内容等待用户修改;若存在则进入相应的操作屏幕。

    1.9K10
    领券