有人可以解释为什么在控制台上输入char
或int
时会出现奇怪的输出。请使用窗口控制台告诉我为什么这样的位置有13-10这样的数字和其他数字。
namespace TestingVariousLoops
{
class Program
{
static void Main(string[] args)
{
int someValue;
do
{
someValue = (int)Console.Read();
Console.WriteLine(someValue);
}
while (someValue != 6);
}
}
}
答案 0 :(得分:2)
因为Console.Read()方法返回您输入的键盘字符的数字表示(ASCII)。要查看此内容,请将其转换回字符:
Console.WriteLine(someValue + " char = " + Convert.ToChar(someValue) );
示例,我运行并输入A,输出显示:
65 char = A
答案 1 :(得分:1)
当您将控制台读取转换为int时,您将获得所输入内容的ASCII值。例如,您点击A和Enter。你会看到65,13,10。这是因为13是回车的ASCII,10是换行。在Windows系统上,当您按下键盘上的[Enter]键时,控制台会读取这两个符号。
答案 2 :(得分:0)
返回的值是您键入的字符的数值。如果你把它投射到一个字符,它将打印出你刚输入的内容。