为什么执行程序时read会直接跳出呢,而readline不会,请高手指点

.Net技术 码拜 8年前 (2016-04-29) 969次浏览
     为什么执行程序时read会直接跳出呢,而readline不会,请高手指点
代码如下:
int[] array = new int[50];
Random r = new Random();
int k = 0;
Console.WriteLine(“请输入一个数字:”);
int temp = Convert.ToInt32(Console.ReadLine());//Console.Read()方法用于获得用户输入任何值的首字符的ASCII值
//Console.ReadLine()方法用于将获得的数据保存在字符串变量中
//int temp = Console.Read();
for (int i = 0; i < 50; i++)
{

array[i] = r.Next(10,100);//[10,100)
k++;
Console.Write(array[i]+” “);
if (k==temp)
{
Console.WriteLine();
k =0;
}
Console.ReadLine();

}

解决方案

40

在键入输入字符时,Read 方法会阻止其返回;该方法在您按 Enter 键时终止。按 Enter 会在输入内容后面追加一个与平台有关的行终止序列(例如,Windows 追加一个回车符和换行符序列)。对 Read 方法的后续调用一次检索输入中的一个字符。检索完最后一个字符后,Read 会再次阻止其返回,并重复上述循环。
使用 ReadLine 方法或使用 KeyAvailable 属性和 ReadKey 方法比使用 Read 方法更可取。
以上为msdn原文https://msdn.microsoft.com/zh-cn/library/system.console.read(v=vs.90).aspx
注意红字部分

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明为什么执行程序时read会直接跳出呢,而readline不会,请高手指点
喜欢 (1)
[1034331897@qq.com]
分享 (0)