ホームページ  >  記事  >  バックエンド開発  >  C#学習日記02~インプットとアウトプット

C#学習日記02~インプットとアウトプット

黄舟
黄舟オリジナル
2017-01-20 13:17:351694ブラウズ

前回の記事を読んだ後、私はすでに C# についての予備的な理解があり、vs2010 でコンソール アプリケーションを作成できるようになりました。私が最初に C を学習し始めたときに先生が教えてくれたことを思い出します。次に、C# と入力を学習します。出力。

()(キーボードから入力された最初の文字を受け入れ、ASCIIコード値を返します)、console.readkey() () (出力内容が同じ行に表示され、カーソルが次の行に移動します)、

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 と入力します。 ! ! もう一度 Enter を押すと、出力結果は次のように表示されます。

 HC666祝你国庆快乐!!!
     HC666祝你国庆快乐!!!
     aaabbb

おそらく Enter を押すと、実行中のウィンドウが点滅して終了します。これは、プログラムが Console.Write(" bbb"); の実行を終了すると、そこにあるためです。は実行するステートメントではないため、終了して終了します。実際、私は以前に C でプログラムを書いたときにこの問題に遭遇しました。そのときは、最後に System("pause"); を追加するか、プログラムを一時停止させることができました。インターネットで調べたところ、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 は幸せになることを願っています。ナショナルデー! ! ! Enter キーを押してから「A」キーを押すと、入力せずにプログラムが実行されます。入力できるのは 1 文字だけなので、結果は次のようになります:

HC666祝你国庆快乐!!!
     HC666祝你国庆快乐!!!
     aaabbb
     A

Console.ReadKey() は主にプログラムを一時停止するために使用されると前に言いました。実際、それは正しくありません。 String ch = Console.ReadKey().Key.ToString; など、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);  
        }  
    }  
}

I。実行ウィンドウに 1234 と入力すると、結果は次のようになりました:

1234
49
经过查阅1的ASCII 为49。

01 の詳細な探索:

前回の記事では、プロジェクト ファイルを自動的に生成するときに、VS が一連の使用システムを自動的に作成しました。これは実際には、システムの事前定義されたタイプを参照しているとのことでしたが、この場合、プログラムは引き続き実行できますか? C と比較すると、C または C++ でプログラムを作成するときにヘッダー ファイルを削除すると、プログラムはエラーを報告して実行できなくなります。C# は C/C++ をベースにしており、それよりも上位なので、実行できるのは...

namespace FirstProgram  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
           int a= System.Console.Read();  
           System.Console.WriteLine(a);  
        }  
    }  
}

なぜなら、これは System 名前空間で定義されているため、エンコーディングの先頭にある参照は後で繰り返し呼び出されるのを避けるため、その参照は削除できますが、メソッドが呼び出されるたびに名前空間を呼び出す必要があります。

上記は、C# 学習日記 02 - 入力と出力の内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。