char x='2';
int y=(int)x;应该可以吧。

解决方案 »

  1.   

         同志,直接转换可能只能得到她的Ascii码,你可以转一个弯嘛,例如:
    char  s='4';
    int i=int.Parse(s.ToString());
    得到的一定是原来的数值了。
         别忘了奖励哟!
      

  2.   

    先转换成string然后再转换成int的方法我现在用,不过觉得有点麻烦。因为MSDN里面说明了char类型可以隐式转换成int,不过又没有明确说明转换的结果。
    另外如果显式转换int i=(int)'1'仍然得出i=49
      

  3.   

    微机原理一定没好好学,C语言没好好看前几章吧。在C等语言中,对于字符类型数据,在计算机中的存储,其实就是整数。但是是有其ASCII码的顺序的,具体是哪个码表查书,C语言中有。0-9对应的整数是48-57。