ゲーム制作

ゲーム制作に必要なC#をマスターしよう!【データ表示+α編】

ユウ
ユウ
こんばんにちは、ユウです。
今回はデータの出力について、以前よりも踏み込んだ話をしていきたいと思います。

本記事で紹介する機能は、ゲーム開発で使用する機会があるものを含んでいるのでぜひ覚えるようにしてください!

ゲーム制作に必要なC#をマスターしよう!【変数表示編】今回はゲーム制作を行う上で用いるC#というプログラミング言語の変数表示について解説しています。変数って数学とかでも聞きますよね?あの代入したりするあれです。プログラミングではめちゃくちゃ使う変数ですが、使ってはいけない名前もあります!ぜひ勉強しましょう!...

今回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進数について理解しきれていない方は以下のサイトを参考にしてみてください。

最後に

今回はデータの出力に一味加えるための機能を紹介してきました。

ゲーム制作では、意外と使う機会があるので時間がある方はぜひ、覚えてみて下さい。

今回はこれで以上となります。

最後まで読んでいただきありがとうございました!

前回の記事ーー>

https://cupuasu.club/c-sharp-gaming03/

ABOUT ME
ユウ
プログラミング担当です。夜行性大学生やってます。 メンバーの中で一番プログラミングが得意で、将来はBMIという研究をしてALSの患者さんへの医療機器の開発を目標にしています。 無線LAN有線LANより便利。