首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Console.ReadLine与Console.In.ReadLine的区别

Console.ReadLine与Console.In.ReadLine的区别
EN

Stack Overflow用户
提问于 2017-08-29 01:42:47
回答 2查看 1.7K关注 0票数 5

在C#中的一个简单的控制台应用程序中,我遇到了从用户读取输入的这两个API:

  • System.Console.ReadLine()
  • System.Console.In.ReadLine()

下面是我试图利用这两个代码片段的一个小代码片段:

代码语言:javascript
复制
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的重要性,即接收用户输入?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-29 01:58:24

代码语言:javascript
复制
System.Console.ReadLine()

是一个别名

代码语言:javascript
复制
System.Console.In.ReadLine()

所以他们完全一样。

下面是中ReadLine的代码。

代码语言:javascript
复制
[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

票数 7
EN

Stack Overflow用户

发布于 2017-08-29 02:05:11

我只想评论一下,但我没有权限。

这两个链接都很好地解释了它。看看例子就能看到一种产品。

获取标准输出流

获取标准输入流

这里还有一个指向它描述得很好的Console.WriteLine法的链接,它使用标准输出流,所以它的意思是

将指定的数据(后面跟着当前行终止符)写入标准输出流

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45929511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档