ASCII码详解与CMD显示问题

ASCII码详解与CMD显示问题

1、ASCII 打印字符:数字 32–126 分配给了能在键盘上找到的字符,当您查看或打印文档时就会出现。注:十进制32代表空格 ,十进制数字 127 代表 DELETE 命令。下面是ASCII码和相应数字的对照表 2、ASCII 非打印控制字符:ASCII 表上的数字 0–31 分配给了控制字符,用于控制像打印机等一些外围设备。例如,12 代表换页/新页功能。此命令指示打印机跳到下一页的开头。 3、扩展 ASCII 打印字符:扩展的 ASCII 字符满足了对更多字符的需求。扩展的 ASCII 包含 ASCII 中已有的 128 个字符(数字 0–32 显示在下图中),又增加了 128 个字符,总共是 256 个。即使有了这些更多的字符,许多语言还是包含无法压缩到 256 个字符中的符号。因此,出现了一些 ASCII 的变体来囊括地区性字符和符号.

在打印扩展字符的时候

于是开始了慢慢长路debug

原因: 一般情况我们CMD中的默认代码页是936(ANSI/OEM - 简体中文GBK,用于在CMD中显示中文的,这样就不能在CMD中显示SCII码中128-255的特殊字符。 解决方法:

方法1:程序中指定CMD的程序输出代码页

#include

#include //这个一定要加

void main()

{

SetConsoleOutputCP(437);

//指定CMD的方式为英文

//既可以正常显示128-255中的字符

//想要显示中文SetConsloeOutputCP(936);

}

方法2:通过修改CMD的属性(程序默认代码页) 1)打开命令提示符cmd窗口。 开始菜单—>运行—>键入cmd 2)修改“默认值” 鼠标放在标题栏上右击—>默认值—>默认代码页,选择437(OEM-美国) 【注意:选择这个后,CMD的中将不能显示中文,想要显示中文,得选择936(ANSI/OEM - 简体中文GBK),这里的显示仅仅只是针对于CMD窗口中的显示,不影响系统的其他显示】 3)关闭当前的CMD窗口,然后重新编译程序,运行即可

成功

相关推荐

魅族MX3全面评测,设计与性能的完美融合
365天稳定更新

魅族MX3全面评测,设计与性能的完美融合

📅 06-30 👀 9324
宏基V5573G评测——性能超群的高性价比笔记本电脑(宏基V5573G)
爸爸生日手绘画 爸爸生日手绘素材
365天稳定更新

爸爸生日手绘画 爸爸生日手绘素材

📅 06-28 👀 1402
竞彩中的滚球是什么意思?滚球规则玩法解析! - 投注指南