搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 怎么将char变量的值赋值给int变量里
标题:
怎么将char变量的值赋值给int变量里
只看楼主
酣战到底
等 级:
新手上路
帖 子:2
专家分:0
注 册:2013-5-29
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:6
怎么将char变量的值赋值给int变量里
char a=200;
int b;
2013-05-30 18:33
lonmaor
来 自:郑州
等 级:
版主
威 望:
75
帖 子:2637
专家分:6423
注 册:2007-11-27
第
2
楼
得分:0
b = a;
会静默转换的。
按C++规范点可以写成
b =
static_cast
<
int
>(a);
旧的强制转换方式是
b = (
int
)(a)
[
本帖最后由 lonmaor 于 2013-5-30 18:52 编辑
]
从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2013-05-30 18:51
酣战到底
等 级:
新手上路
帖 子:2
专家分:0
注 册:2013-5-29
第
3
楼
得分:0
回复 2楼 lonmaor
没用啊,结果是-56
2013-05-30 19:07
qjyzpsy
等 级:
论坛游民
帖 子:8
专家分:34
注 册:2013-4-28
第
4
楼
得分:7
当你定义的a的值不大于于127是楼上的方法是可以的,但超过127就会出错。因为用整数来定义字符型变量,表示的是ASCII码中该整数对应的字符,二ASCII码只有127个 ,所以当定义的整数超过127时,此定义就没有意义,以下操作都会出错!
2013-05-30 19:49
lonmaor
来 自:郑州
等 级:
版主
威 望:
75
帖 子:2637
专家分:6423
注 册:2007-11-27
第
5
楼
得分:7
以下是引用
qjyzpsy
在2013-5-30 19:49:23的发言:
当你定义的a的值不大于于127是楼上的方法是可以的,但超过127就会出错。因为用整数来定义字符型变量,表示的是ASCII码中该整数对应的字符,二ASCII码只有127个 ,所以当定义的整数超过127时,此定义就没有意义,以下操作都会出错!
我大意了。没注意定义的a就溢出了。
从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2013-05-30 21:01
子楠
来 自:武汉
等 级:
论坛游侠
帖 子:111
专家分:164
注 册:2013-4-9
第
6
楼
得分:7
。
2013-05-30 21:56
深藏在云端
等 级:
新手上路
帖 子:1
专家分:0
注 册:2015-10-4
第
7
楼
得分:0
不要用char
用unsigned char a=200;
2017-05-09 12:18
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-412614-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.097328 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved