请教 console.readline()为何不能留住屏幕的作用呢? 为何省略最后一句console.readline(),就不会留住屏幕呢?
上面已经有两句 console.readline() 了,为何单独不起作用呢,
必须在配上最后这一句 console.readline() 才能起到留住屏幕的作用呢?using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace d0420
{
class Program
{
static void Main(string[] args)
{
int i;
Console.Write("请输入: i=");
i = Console.Read();
if (i == 1)
{
Console.Write("i is one");
Console.ReadLine();
}
else
{
Console.Write("i is not one!");
Console.ReadLine();
}
//为何省略下面这一句,就不会留住屏幕呢?
//上面已经有两句 console.readline() 了,为何单独不起作用呢,
//必须在配上最后这一句才能起到留住屏幕的作用呢?
//Console.ReadLine();
}
}
}
上面已经有两句 console.readline() 了,为何单独不起作用呢,
必须在配上最后这一句 console.readline() 才能起到留住屏幕的作用呢?using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace d0420
{
class Program
{
static void Main(string[] args)
{
int i;
Console.Write("请输入: i=");
i = Console.Read();
if (i == 1)
{
Console.Write("i is one");
Console.ReadLine();
}
else
{
Console.Write("i is not one!");
Console.ReadLine();
}
//为何省略下面这一句,就不会留住屏幕呢?
//上面已经有两句 console.readline() 了,为何单独不起作用呢,
//必须在配上最后这一句才能起到留住屏幕的作用呢?
//Console.ReadLine();
}
}
}
{
int i;
Console.Write("请输入: i=");
i =Convert.ToInt32( Console.ReadLine());
if (i == 1)
{
Console.Write("i is one");
Console.ReadLine();
}
else
{
Console.Write("i is not one!");
Console.ReadLine();
} }
我反复试过,确实留不住屏幕的。
但是吧最后一句 console.readline()的注释取消,就能留住屏幕了。
而且,上面两句 console.readline()同样不能取消,
说白了,要两张两句 console.readline()才会起到留住屏幕的作用。希望大家真的试一下呀。
为什么用 read()就不行呢?
看错了,我调试程序最外面有一行Console.ReadKey();
执行到这里,你操作,按1回车。1被Read()返回,回车还在。
i = 49; // read返回的是字符的ascii
然后判断,不是1.
执行
Console.Write("i is not one!");
Console.ReadLine();//读入刚才1输入后面的回车换行。立刻结束继续执行。
string a = Console.ReadLine();
Console.WriteLine(a);
大家可以直接测一下这个代码就明白了。