关于0x0d与0x0a的ASCII。

本文探讨了在masm汇编语言及C语言中,0x0d(回车)与0x0a(换行)的不同效果。在masm中,0x0d使光标回到行首,而0x0a使光标移至下一行;在C语言中,'/n'等同于0x0a,用于换行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天发现一个有趣的现象:

masm(我用的版本是6.11)中作汇编时发现,0x0d与0x0a有着不同的作用。比如:

“dead for dream”

在这个字符串后只加上0x0d则得到 “光标移到开头的那个d下面,而没有换行”,再输入字符的话,

将原来的字符着改掉。

在这个字符串上只加上0x0a则得到 “光标移到末尾m字符后一位的下一行”。

c语言中,我试了一下,发现‘/n’ 的ASCII就是0x0a,在c中,只用0x0a会得到另起一行的效果。

而只用0x0d则得到与masm中相同的效果。

使用MFC编程的时候,使用WM_CHAR消息时,判断输入字符是否为回车,用的是0x0d,而0x0a

不起作用。

具体原因还正在探究中,在ASCII表中,对0x0d的解释是:carriage return(回车),

而0x0a的是line feed(换行)。

继续研究。。。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值