Linux 命令行厉害 其实Windows 的也很强:深入 Windows 控制台
例如,WriteConsoleOutputCharacter()函数编译为ASCII项目的WriteConsoleOutputCharacterA(),或Unicode项目的WriteConsoleOutputCharacterW()。如果需要指定处理方式,代码中可以直接调用... A或...W后缀的函数。
此外,控制台不支持一些较新的Unicode功能,包括零宽度连接符(ZWJ),该符号被用于连接阿拉伯语和印度语中的其他单独字符,并将表情符号字符组合成一个可视字形! 那么如果你想在控制台上输出一个ninjacat表情符号或复杂的多字节中文/阿拉伯字符会怎样呢? 糟糕的是,你做不到! Console API不仅不支持长度超过2字节/字形的Unicode字符(NinjaCat表情符号需要8个字节!),但Console内部的UCS-2缓冲区不能存储该数据的额外字节,更糟糕的是 ,Console当前的基于GDI的渲染器甚至无法绘制字形,即使缓冲区可以存储它! 可叹! 这就是遗留代码的乐趣。 但是,我也会希望你们到此打住 - 我们将在本系列的新一篇文章中回到这个主题。 敬请关注! 所以,我们在哪里? 再一次,亲爱的读者,如果你读过以上的所有内容,谢谢你,也祝贺你 —— 你现在比你的大多数朋友都更了解 Windows 控制台,甚至可能比你想知道的还要多!祝你幸运! 在这篇文章中,我们涵盖了很多内容: Windows控制台的主要构建模块:
控制台做什么?
控制台与 *NIX 终端有什么不同
控制台存在的问题
在本系列的后续文章中,我们将深入探讨控制台,并讨论如何处理这些问题……和更多其他内容! 像往常一样,请继续关注我们。 【编辑推荐】
点赞 0 (编辑:帝国网站管理系统) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- win7打开设备管理器的几种方法步骤
- active-directory – Windows 10:具有缺失权限的AD域管理员
- windows-server-2012-r2 – 禁用Windows 2012 R2上的更新弹
- PowerShell – Windows 10上缺少Install-WindowsFeature(和
- 一文秒懂:Windows/Mac OS X/Linux/Unix对比
- windows – 如何阻止单个GPO的继承/应用?
- 数不清的Chrome插件 ,非常适合开发者的只有这几个!
- win10怎样设置任务栏上图标大小
- 在Fedora中获取最新的Ansible 2.8
- 7个实用的操作 Bash 历史记录的快捷方式