为了账号安全,请及时绑定邮箱和手机立即绑定

在C#中将char转换为int

在C#中将char转换为int

C#
慕慕森 2019-08-08 14:24:47
在C#中将char转换为int我在c#中有一个char:char foo = '2';现在我想把2变成一个int。我发现Convert.ToInt32返回char的实际十进制值而不是数字2.以下将起作用:int bar = Convert.ToInt32(new string(foo, 1));int.parse也适用于字符串。C#中没有本地函数从char到int而不是字符串吗?我知道这是微不足道的,但似乎很奇怪,直接进行转换没有任何原生的东西。
查看完整描述

3 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

这会将它转换为int:

char foo = '2';int bar = foo - '0';

这是有效的,因为每个字符在内部由数字表示。字符“0”到“9”由连续数字表示,因此找到字符“0”和“2”之间的差异会得到数字2。


查看完整回答
反对 回复 2019-08-08
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

有没有人考虑使用int.Parse()int.TryParse()喜欢这个

int bar = int.Parse(foo.ToString());

甚至更好

int bar;if (!int.TryParse(foo.ToString(), out bar)){
    //Do something to correct the problem}

它更安全,更不容易出错


查看完整回答
反对 回复 2019-08-08
  • 3 回答
  • 0 关注
  • 2951 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信