在C#里用Read()输入的int数据为什么不对?

来源:百度知道 编辑:UC知道 时间:2024/06/01 14:42:27
我写了如下代码:

int i;
System.Console.Write("i=");
i=System.Console.Read();
System.Console.Write("i="+i);

运行时,当我输入1,结果却变成【i=49】,为什么呀?~~~~~

应该用:
int i;
System.Console.Write("i=");
i=int.Parse(System.Console.ReadLine());
System.Console.Write("i="+i.ToString());

你直接得到的是1的ASCII值,就是49.

用read()读入的i是字符串 49显示的是ASCII码
如要显示整形需要改变类型 Convert.ToInt32(i)

强制转成了ASCII