int a = 0x81;
char b = a;
cout<< b <<endl;
输出结果为空
char类型不能获取扩展ASCII码么?如何获取扩展ASCII码的字符呢?
使用强制转换即可
#include
using namespace std;
int main()
{
char ch;
cin>>ch;
cout<<int(ch)<<endl;
return 0;
}
/*运行结果:
A
65
*/
你换宽字符或者字符串都可以
C/C++中char类型默认为有符号整型,所以取值范围为-128-127,0x81在有符号char中存储表示为-1,而ASCII扩展字符的范围为128-256。所以获得扩展ASCII码字符,必须声明char为无符号。个人见解请多多指教
可以获取字符,但是在控制台要想显示出来,取决于你的控制台设置的代码页(codepage)和字体(font),不同的系统设置的方式不同。你找找。
可以获取字符,但是在控制台要想显示出来
首先,char型数据的取值不能大于128(一个字节),否则溢出。其次,标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,最大值为128。你的a=0x81,其实是a=129了,溢出了。
char当字符输出了,转换成int型输出