黑马程序员技术交流社区

标题: 求助求助呀。。。 [打印本页]

作者: 739994889    时间: 2015-8-24 11:36
标题: 求助求助呀。。。
  问:怎样让char类型的东西转换成int类型?
作者: kevin986745    时间: 2015-8-24 12:22
从 char 到 int 属于“从短到长”的转换,而从 int 到 char 则为“从长到短”的转换。
短到长时,系统会自动提升,会将1个字节的char类型数据扩充到4个字节(32位系统),对于无符号类型来说,只将int的最低字节复制为char的值,其余三个字节都为0。
长到短时,只将int的最低字节的内容复制到char类型的变量,三个高位字节被忽略,这在编译时会给出警告,但通过强制类型转换则可以避免警告出现,如 char ch = (char)intvar
强制转换(int)(char a)即把字符型数据a强制转换成了int型数据了,在255内字符型的和int型的是可以通用的,例如a-32=65,a的ASCII码值为97.
作者: pengbeilin    时间: 2015-8-24 18:19
char c ='c';
  int i = c;
楼上说不对,char是2个字节
作者: jumtop    时间: 2015-8-24 18:37
系统会自动装换呀,比如:
char c = '中';
int i = c;
这个时候系统会自动将c转换成int类型的数据
作者: 不想睡    时间: 2015-8-24 21:48
char c = 'c';  int a = c;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2