C#笔记——Windows控制台输入流、Console.Read()和Console.ReadLine()

1 基础

  1. Console.Read():从标准输入流读取下一个字符(含\r\n)

  2. Console.ReadLine():从标准输入流读取下一行字符(不含\r\n)

2 案例一

static void Main(string[] args)
{
	int a = Console.Read();
	int b = Console.Read();
	int c = Console.Read();
	Console.Write(a + "、" + b + "、" + c);
}//本行插入断点,以便查看输出结果

2.1 过程

  1. 启动程序,输入 A 后输入回车键

  2. 控制台输出结果为 65、13、10

2.2 解析

  1. 程序运行到Console.Read()方法时,当前输入流没有字符可以读,因此控制台自动开启用户输入

  2. 用户输入A后,输入回车键

  3. 控制台检测到回车键,自动关闭用户输入

  4. 注意回车键也是一次输入!此时输入流为[A\r\n],回车符\r和换行符\n已经进入到输入流中

  5. int a = Console.Read() --> a = 字符A的ASCII码值65

  6. int b = Console.Read() --> b = 字符\r的ASCII码值13

  7. int c = Console.Read() --> c = 字符\n的ASCII码值10

3 案例二

static void Main(string[] args)
{
	int a = Console.Read();
	string str = Console.ReadLine();
	Console.WriteLine(str + ":" + str.Length);
}//本行插入断点,以便查看输出结果

3.1 过程

  1. 启动程序,输入 AHallo 后输入回车键

  2. 控制台输出结果为 Hallo:5

3.2 解析

  1. 程序运行到Console.Read()方法时,当前输入流没有字符可以读,因此控制台自动开启用户输入

  2. 用户输入AHallo后,输入回车键,此时控制台关闭用户输入,输入流为[AHallo\r\n]

  3. int a = Console.Read(); --> 读取输入流的下一个字符A

  4. 程序运行到Console.ReadLine()方法时,当前输入流还有字符[Hallo\r\n]可以读,因此不会开启用户输入

  5. string str = Console.ReadLine() --> 读取输入流的下一行字符,即以\r\n为止,并且返回的字符串不包含末尾的\r\n,str = “Hallo”

4 总结

  1. 运行到Console.Read()或Console.ReadLine()时,若输入流中没有字符可以读,控制台自动开启用户输入,若有则不会开启

  2. 用户输入回车键后,控制台自动关闭用户输入

  3. 控制台输入流中会记录回车键,Windows系统是\r\n

  4. Console.Read()只会从输入流中读取下一个字符,且会读到\r和\n

  5. Console.ReadLine()从输入流中读取下一行字符,返回字符串不包含\r和\n

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值