文字と値


C言語テストコード

 以前変数の基礎的なことについてこちらで解説しました。今回は文字列と値について解説します。
 それでは質問です。1+1は?と聞かれたら何と答えるでしょう。多くの方は2と答えると思います。これは正解でもあり間違いでもあります。プログラミングの世界では型というものがあります。質問の1+1だと型が分かりません。1が整数型であれば答えをは2です。対して1が文字だった場合はどうなるでしょう?下記のコードで試してみましょう。まずはC言語から

#include <stdio.h>

int main()
{
    int i=1;
    char c='1';
    printf("%d\n",i+i);
    printf("%c\n",c+c);
    return 0;
}

VBAテストコード

Sub MojiTest()
    Dim i As Integer
    Dim c As String
    i = 1
    c = "1"
    MsgBox i + i
    MsgBox c + c
End Sub

 C言語は2とb、VBAは2と11と表示されたと思います。このように同じ1でも型が異なるだけで思いもよらない結果となることがあります。またコードが長くなればなるほど型の把握は困難になります。なので早めに型を把握する癖をつけておくとよいでしょう。次回は空白判定について解説します。


コメントを残す