C#的输入与输出实际上是援用System定义好的Console.范例,
输入: Console.ReadLine() (读入一行String范例的字符串以回车键末端),
Console.Read() (接收从键盘输入的第一个字符,并返回它的ASCII码值),
Console.ReadKey() (守候用户按下任意键,一次读入一个字符。);
输出:Console.WriteLine() (输出的内容显现在统一行,而且光标移到下一行),
Console.Write() (输出内容显现在统一行,光标不换行)
下面我就写个顺序,让我们输入 "HC666祝你国庆快活!!!" 然后输出;
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace FirstProgram { class Program { static void Main(string[] args) { String say = Console.ReadLine(); //由于它的返回值是String范例的所以定义的say也得是String范例 Console.WriteLine(say); //输出say的类容并换行。。。。对照以下的输出 Console.Write("aaa"); //输出aaa不换行接着输出bbb Console.Write("bbb"); //输出为aaabbb } } }
我键入 HC666祝你国庆快活!!! 再输入回车后输出效果显现为:
HC666祝你国庆快活!!! HC666祝你国庆快活!!! aaabbb
或许当你按下回车的时刻,你的运转窗口会一闪而过然后就退出了,这是应为当顺序实行完Console.Write("bbb");时就没有实行语句了所以就完毕了退出。实在之前用C写顺序的时刻也有碰见,那时刻能够在末端的时刻增加System("pause"); 或许写getchar(); 来让顺序停留,我想C#也实用吧!上网查了下Console.ReadKey()果真能够实在他另有其他的功用,更多的照样用来停息顺序。因而我将Console.ReadKey()增加在了末端。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace FirstProgram { class Program { static void Main(string[] args) { String say = Console.ReadLine(); //由于它的返回值是String范例的所以定义的say也得是String范例 Console.WriteLine(say); //输出say的类容并换行。。。。对照以下的输出 Console.Write("aaa"); //输出aaa不换行接着输出bbb Console.Write("bbb"); //输出为aaabbb Console.ReadKey(); //守候输入 } } }
果真当顺序输出 aaabbb 今后光标就停在背面。最先的时刻说了Console.ReadKey()能够读入用户所输入的第一个键,而且是不是显现此键 (默许是显现按键的)Console.ReadKey(true)不显现Console.ReadKey()或Console.ReadKey(false)显现,因而我又对上面的代码增加了一些请求不显现用户所按下的键,但今后输出此按键;
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace FirstProgram { class Program { static void Main(string[] args) { String say = Console.ReadLine(); //由于它的返回值是String范例的所以定义的say也得是String范例 Console.WriteLine(say); //输出say的类容并换行。。。。对照以下的输出 Console.Write("aaa"); //输出aaa不换行接着输出bbb Console.Write("bbb"); //输出为aaabbb Console.WriteLine(); char a= Console.ReadKey(true).KeyChar; //将按键以字符情势赋值给a Console.WriteLine(a); Console.ReadKey(); //守候用户输入 } } }
我反复上面的输入 HC666祝你国庆快活!!!回车 然后按了“A”键不必回车顺序就向下实行了,由于它只允许输入一个字符,效果为:
HC666祝你国庆快活!!! HC666祝你国庆快活!!! aaabbb A
我之前说Console.ReadKey()大多数是用来停息顺序的,实在也不对,我查了一下它另有很多其他的功用比方 String ch = Console.ReadKey().Key.ToString; 将按键转化为String范例,想到String范例我就激动了,用它能够举行疾速简约的字符处置惩罚,这一点学过C++的同砚很清晰,今后再细致研讨。假如用ReadKey()看成末端的停息语完整没有必要这么做,vs2010本身就可以够做到,每次运转顺序的时刻不要单击 谁人绿色的小三角 而是 调试——〉最先实行(不调试)单击就可以搞定。
末了Console.Read()它与Consle.ReadKey()想比前者能输出不止一个字符,但只取第一个字符,并返回它的ASCII码值,这个我们能够查询一个字符的ASCII码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace FirstProgram { class Program { static void Main(string[] args) { int a= Console.Read(); Console.WriteLine(a); } } }
我在运转窗口中输入 1234 回车 效果为:
1234 49 经由查阅1的ASCII 为49。
对01的深切探讨:
上一篇中vs在为我们自动生成项目文件时自动编写了一系列的using system....我说了它实际上是援用体系预定义的范例,本着学无止境的碳素精力我将他们悉数删除了,如许的话顺序还能运转吗?与C 对照,假如我们用C或C++编写顺序时去掉头文件,顺序回报错运转不了,C#是基于C/C++也高于它,因而它是能够运转的只需要……
namespace FirstProgram { class Program { static void Main(string[] args) { int a= System.Console.Read(); System.Console.WriteLine(a); } } }
由于Console.是在System定名空间中定义的,在编码开首援用避免了背面的反复挪用,所以能够删除它的援用然则就必须在每次挪用要领时挪用定名空间。
以上就是C#进修日志02--输入与输出的内容,更多相关内容请关注ki4网(www.ki4.cn)!