Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
本当に初歩的なのですが(1+2=12)
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9300#CommentId12592
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
魔界の仮面弁士
 (社会人)
投稿日時
2009/8/25 09:14:42
データ型はとても重要です。
今回のような問題を避けるため、+ 演算子による加算処理を行う際には、
その対象となるデータが、共に数値型である事を確認するよう心がけましょう。
特に、「数値 + 文字列」といった型の混在は避けるようにしてください。
また、文字列の連結として使う場合には、加算処理と区別するために
TextBox3.Text = TextBox1.Text & TextBox2.Text
のように「& 演算子」を用いる事をお奨めします。
> 本当に初歩的なのですが
初歩といえば初歩なのですが、こうした型の違いは、初心者のうちは
意外と見落としやすいものかと思います。
また、上級者になればなるほど、型を意識したコーディングを心がけるため、
異なるデータ型同士の + 演算となると、上級者でも混乱してしまうようです。
以前、データ型混在の + 演算というネタで、下記のような VB クイズを
出題したことがあるのですが、ベテランの VB 開発者であっても、
これらを正しく即答できた人は意外と少なかったです。
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Q. 変数 A の値が 1530 となる物を全て挙げてください。
1: A = "15" + 15 + 15
2: A = "15" + (15 + 15)
3: A = "15" + "15" + "15"
4: A = "15" + ("15" + 15)
5: A = ("15" + "15") + 15
6: A = "15" + (("15") + ("15"))
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Q. 変数 A, B は、いずれも 1530 という値になります。
では、各結果の型は、それぞれ何になるでしょうか。
A = "15" & "15" + 15
B = "15" + "15" + 15
TextBox1.Text = TypeName(A)
TextBox2.Text = TypeName(B)
1: 整数型
2: 長整数型
3: 単精度浮動小数点数型
4: 倍精度浮動小数点数型
5: 文字列型
6: その他
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-