关于用c语言输出全部ASCII码表

#include<iostream.h>
void main()
{
int a;
for (a=0;a<=300;a++)
cout<<char(a);
}
为什么输出的最后都是乱码,而且前面不完整,结尾有汉字,谢谢了

首先ASCII 是一个char,[-128~127]区间
0-127 是普通ASCII,又分为可打印字符和不可打印的控制字符.
不可打印的有'\n'(10) '\r'(13) '\t','\b'等,用作打印控制的,所以前面不完整是正常的,比如你输出到13的时候,光标会移动到这一行的开头重新打印,这样会覆盖一些内容.

ASCII小于0的,用作MultiBytes,如果两个ASCII,第一个是负数,那么它会跟后面的一个字符连接,组成Multibytes,显示为系统语言代码页的字符.windows中文的语言默认的语言代码页是中文(936).所以显示中文.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-01
不能到 300,到128就够了。

后面是乱码才正常。

汉字,是因为超过128了。
第2个回答  2010-04-01
ASCII码表中只有128个字符,扩展的ASCII码表中有256个字符,没有300个那么多。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网