为什么在OSX上的c编程中Ctrl-J和Ctrl-M返回10?

用户榨汁机

考虑这个线程 什么是C编程语言中的EOF?

答案是EOF(Ctrl-D)结果getchar返回-1

  • 我的问题是Ctrl-J和Ctrl-M在OSX上的c中代表什么,为什么为什么getchar使用与上面链接中相同的代码为两者返回10?
  • 还有哪些其他快捷方式(Ctrl-Somthing / Cmd-something)会getchar变成一个静态的预定义数字?
chux-恢复莫妮卡

stdin通常处于文本模式。在文本模式下进行读/写操作时,每个OS都会发生有关行尾的各种转换。Crtl-M是其中之一-它将转换为10。如果IO处于二进制模式,则不会进行转换。

控制台将各种键盘组合映射到各种char和动作(例如Ctrl-D-> EOF)。char当然,创建的各种值都包含0到127的大多数值。由于这些值通常映射到ASCII,因此前32个值(Ctrl-@,CTRL-A,CTR1-B,... Ctrl-_)可能具有没有图形表示

注意:请注意,在return返回getchar()之后再次调用时返回了什么EOF希望它可以立即EOF再次返回,而无需等待任何其他按键。(Ctrl-D)设置条件,而不是字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从ncurses getch()返回Ctrl + M?

在tmux中绑定Ctrl + Tab和Ctrl + Shift + Tab

怎么做-CTRL A和CTRL + C?

为什么在C#中启用多行的TextBox控件上禁用CTRL + A快捷键?

ctrl + g和ctrl + f之间的区别

chrome中ctrl + e和ctrl + k之间的区别

为什么10和5在Python中返回5,而5和10在python中返回10?基本上,它返回第二个int和运算符,与值无关

ROS中的持续时间计算和控制-此外,即使按了Ctrl-C,为什么此脚本仍保持运行?

允许在文本框中仅浮动(和负浮动),全选,复制和粘贴(Ctrl + A,Ctrl + C,Ctrl + V)

切换到Ctrl + Alt + F1并返回桌面(Ctrl + Alt + F7):黑屏和乱码显示

Vimperator和Ctrl + K

bash中的Ctrl-Backspace和Ctrl-Delete

终端中的Ctrl-z和Ctrl-c有什么区别?

CTRL + 4(和CTRL + \)在bash中做什么?

是什么阻止ctrl-alt-m到达Windows 10上的IntelliJ?

在外壳中组合Ctrl + c和Ctrl + z的结果

为什么在bash快捷方式中不使用Ctrl + m和Ctrl + q?

Ctrl + Shift + Tab有时会注册Ctrl + w,Ctrl + c和Ctrl + x

为什么选择ctrl + c终止进程?

为什么我必须按两次CTRL + [才能从vi中的VISUAL模式返回到NORMAL模式?

终端中的Ctrl + v和Ctrl + c

Ubuntu终端中的Ctrl + C和Ctrl + V

Ctrl + C和Ctrl + V如何工作?

为什么CTRL + C不退出vim?

为什么在OSX上复制和粘贴图像现在在Java 8中返回sun.awt.image.MultiResolutionImage

为什么 Ctrl + C 不会杀死在终端中运行的 Python?

Firemonkey 中的 KEYDOWN [ CTRL 和 "+" ]

nano 中的 Ctrl+Z、Ctrl+X 和 Ctrl+C 有什么区别?

如何以编程方式确定不同键盘布局上“Ctrl + Plus”和“Ctrl + Minus”的正确击键?