今日ちょっと待ち時間にVisual StudioでC#使ったWindowsフォームアプリ作成してました。 実は今、TexterをC#使って作り直してるところです。前はHSPだったんですけど。 それで今日気になったこと。それは変数です。

今回試したかったのは、この下の画像のようにdouble型の変数”verInfo”を連結してラベルコントロールの文字を代入したい!ということ。

double verInfo = 1.0;
Label1.Text = "Text1" + verInfo + "Text2";

ただし、これでやってしまうとせっかくdouble型にしているverInfoの中身(例では1.0)がなぜか整数の1として表示されてしまいます。 ちなみにverInfoの値を1.2とかにしてやると小数でしっかりと表示されます。 これを解決するにあたって、社員さんに見せっこしながらコード書いてました。verInfoをToStringしてみたら?とかfloatにしたら、とか。 やってみたけど全然うまくいかなくて。自分の周りの企業ではあまりC#使ってる印象ないですね。せいぜいJavaとかPythonとか。 結局いろんなサイト見てやっと辿り着いた答えがこちら。

double verInfo = 1.0;
string verInfo2 = verInfo.ToString("F1");

といったもの。簡単に説明すると、変数はそのままdoubleでセット、そしてStringに変換するときの方法にちょっとコツがいると。 Stringからの変数=元変数.ToStringで、(“F1”)です。どうやらこのFnは小数点以下の表示数だそうです。 つまり、整数ならF0、小数第三位ならF3、といったところでしょうか。

色々試行錯誤したりして、出てきた言葉が「変数って奥が深いですね。。。」です。

カテゴリー: Develop