在C#中的一个简单的控制台应用程序中,我遇到了从用户读取输入的这两个API:
System.Console.ReadLine()System.Console.In.ReadLine()下面是我试图利用这两个代码片段的一个小代码片段:
namespace StackOverflow
{
class Program
{
static void Main(string[] args)
{
var input1 = System.Console.ReadLine();
var input2 = System.Console.In.ReadLine();
}
}
}当我运行这个程序时,这两行代码所做的事情完全相同,即在控制台上键入的任何字符串都会返回,直到我按下返回键为止。一次快速的谷歌搜索只给了我一个Console.Read和Console.ReadLine API的区别的链接。有谁能帮助我理解这两种不同API的重要性,即接收用户输入?
发布于 2017-08-29 01:58:24
System.Console.ReadLine()是一个别名
System.Console.In.ReadLine()所以他们完全一样。
下面是中ReadLine的代码。
[HostProtection(UI=true)]
[MethodImplAttribute(MethodImplOptions.NoInlining)]
public static String ReadLine()
{
return In.ReadLine();
}如您所见,Console.ReadLine()只调用Console.In.ReadLine()。
http://referencesource.microsoft.com/#mscorlib/system/console.cs,bc8fd98a32c60ffd
发布于 2017-08-29 02:05:11
我只想评论一下,但我没有权限。
这两个链接都很好地解释了它。看看例子就能看到一种产品。
获取标准输出流。
获取标准输入流。
这里还有一个指向它描述得很好的Console.WriteLine法的链接,它使用标准输出流,所以它的意思是
将指定的数据(后面跟着当前行终止符)写入标准输出流。
https://stackoverflow.com/questions/45929511
复制相似问题