我想在使用C++和Code :: Blocks(字符代码大于128)的控制台应用程序中使用扩展的Ascii代码。 http://www.asciitable.com/ 控制台在钻石内部显示问号。Code :: Blocks中的扩展Ascii字符C++
我试过到目前为止:
char myChar = 200;
cout << myChar;
cout << static_cast<char>(200);
我想在使用C++和Code :: Blocks(字符代码大于128)的控制台应用程序中使用扩展的Ascii代码。 http://www.asciitable.com/ 控制台在钻石内部显示问号。Code :: Blocks中的扩展Ascii字符C++
我试过到目前为止:
char myChar = 200;
cout << myChar;
cout << static_cast<char>(200);
字符无法容纳整个字符集
使用无符号的字符,而不是。
unsigned char myChar = 200;
cout << myChar << endl;
一个焦炭一般是符号字符。 它可以保存从-128到127的值。ASCII适合在0到127之间,所以当使用ASCII时char是合理的。
对于非ASCII字符128到255,您需要更大的东西。 无符号字符可以存储从0到255的值。涵盖整个字符集。 这正是你需要的。
还有其他的事情要研究。你可以阅读关于unicode。但无符号字符应该让你在你目前的问题。
它也没有工作。 – 2012-02-07 23:40:39
扩展ASCII不存在。陈述你想要的编码,并设置你的控制台使用上述编码。 – 2012-02-07 23:05:54
如果我们想把它称为扩展ascii,那么我们可以。那么! – 2012-02-07 23:08:54
@DavidHeffernan:问题是,有*许多*“扩展ASCII”编码。参考[有更好答案的类似问题](http://stackoverflow.com/questions/618332/c-extended-ascii-characters)。 – 2012-02-07 23:11:27