今回はデータの出力について、以前よりも踏み込んだ話をしていきたいと思います。
本記事で紹介する機能は、ゲーム開発で使用する機会があるものを含んでいるのでぜひ覚えるようにしてください!
今回C#を紹介するにあたって、発行元:SB クリエイティブ株式会社 著者:粂井 康孝(くめい やすたか)さんの「猫でもわかるC#プログラミング」を参考に紹介しています。
WriteLineメソッドとWriteメソッド
前回までは文字の出力にConsole.WriteLineを使用してきました。
しかし、これによく似たメソッドにConsole.Writeというものがあります。
これらの違いは、Console.WriteLineは文字列の最後に「改行」を付け加えていますが、Console.Writeは付加していません。
それでは例のコードを実際に書いてみましょう。
このコードでは、あいうえおを出力した後に改行しています。
Console.WriteLineに値を入れずに出力すると、改行のみを出力します。
フォーマット指定子を使った変数の表示
変数を表示する別な方法もあります。
下の例でも書いているように、Conosle.WriteLine(“x={0}”,x);と書くと、{0}の部分に変数x入れられた値が表示されるようになります。
また、Console.WriteLine(“x={0},y={1}”,x,y);と書くと、{0}の部分にxの値が、{1}の部分にyの値が表示されるようになります。
つまり、Console.WriteLine(“フォーマット文字列”,引数0,引数1,引数2,・・・);とあれば、フォーマット文字列の中の{n}は、後ろの引数nの値に置き換えられます。
フォーマット文字列で使わない引数が存在していても問題ありません。フォーマット文字列の中で、同じ引数を複数回使っても問題ありません。また、フォーマット文字列で置き換える引数の文字列は順不同で構いません。
また、注意点としては引数は0から始まるということを意識しておいてください。
{n}のことをフォーマット指定子と呼ぶことがあります。
今回はWriteLineメソッドのみに使用しましたが、これはWriteメソッドも同様に使用することができます。
それでは、例を見てみましょう。
桁数の表示
フォーマット指定子を使用すると、引数番号の他に桁数や表示フォーマットも指定することができます。
これらの表示は例のように表します。{引数の番号,桁数:表示フォーマット}
桁数と表示フォーマットは省略できるので、あくまでオプションということを覚えておいてください。
また、今回の注意点として表示フォーマットの前に「:」コロンがついているので注意してください。
かなり入力間違いが起こるので気を付けてください。
まずは、桁数を表示していきます。
例1){1221,10}
と書くと、この場所に「引数1221の値を、10個分のスペースを確保して表示する」という意味になります。
マイナスの桁数にすると左揃えとなり、スペースが余ると先頭は空白となります。
それでは、一度桁数表示の理解のために例を書いてみましょう。
標準書式指定文字を使用した書式の指定
表示フォーマットは、主に数値の書式を指定することができます。
この指定には標準の指定文字として代表的なものを以下に記しておきます。
書式指定文字 | 表示方法 |
C(またはc) | 通貨 |
D(またはd) | 整数の10進数表示 |
E(またはe) | 浮動小数点の指数表示 |
F(またはf) | 標準の浮動小数点表示 |
G(またはg) | EまたはFの短い表示 |
N(またはn) | 桁で区切られた浮動小数点表示 |
P(またはp) | パーセント表示 |
X(またはx) | 整数の16進数表示 |
これらはゲーム開発において、使うこともしばしばあるので気が向いたときにでも振り返るようにしてください。
それでは例を示してみましょう。
大体の対応関係で、それぞれどのような意味をなしているのかを考えてみてください。
Xを指定すると123を16進数で表した「7B 」が表示されます。
16進数について理解しきれていない方は以下のサイトを参考にしてみてください。
最後に
今回はデータの出力に一味加えるための機能を紹介してきました。
ゲーム制作では、意外と使う機会があるので時間がある方はぜひ、覚えてみて下さい。
今回はこれで以上となります。
最後まで読んでいただきありがとうございました!
前回の記事ーー>