SakuraMarble 2022-10-13 08:35 采纳率: 75%
浏览 14
已结题

C语言输出问题为什么回车输出10回车的ascii码不是13吗

对于以下代码:
char x[100]; char y;
scanf("%s%c", &x, &y);
printf("%s%d", x, y);
input: abcd(按回车)
output: abcd10
为什么 会输出一个10?

  • 写回答

2条回答 默认 最新

  • 老皮芽子 2022-10-13 09:01
    关注

    回车 \r 0x0d 13,回到行首
    换行 \n 0x0a 10,下一行
    在 windows 中每行尾是 <回车><换行> 两个字符
    2 个字符有些浪费
    在 unix /linux 中每行尾就只用 <换行>
    在 MAC 苹果 中每行尾就只用 <回车>
    在 windows 系统中一些读键盘的函数也会将<回车>转换成 <回车><换行>
    你的输出10就是这个原因

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月26日
  • 已采纳回答 10月18日
  • 创建了问题 10月13日