SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

VB 入門編3 - 演算子、比較演算子、論理演算子、is 関数

■演算子

  ・VB の基本演算子は、次のとおりである。
    計算の優先順位は数学的で、() で計算順位を変更する。

    =       代入
    +       加算
    -       減算
    *       掛け算
    /       割り算
    mod     余り
    ^       階乗
    &       文字列結合

   dim a as double

   a = 1              '** a に 1 を代入
   a = a + 1          '** 現在の a に 1 を加算
   a = a - 1          '** 現在の a から 1 を減算
   a = 1 + 2 * 4      '** 2 * 4 の結果 8 に 1 を加算
   a = (1 + 2) * 4    '** 1 + 2 の結果 3 に 4 を乗算
   a = 10 mod 3       '** 10 / 3 の余り、1 を求める
   a = 2^8            '** 2 の 8 乗

   dim s as string

   s = "abc" & "def"  '** "abc" と "def" を結合して、"abcdef" にする

  ・VB の基本数値計算は 2 進演算である。
    従って、小数点以下を含む数値計算を行うと、微妙な誤差問題が発生する。
    特に事務処理などの金額計算では 10 進演算になるように注意する。
    10 進演算を VB6 で行うには、variant の cdec を使用する。
    尚、10 進演算は、BCD 演算と呼ばれることもある。

    dim total as variant
    dim su1 as variant
    dim su2 as variant

    su1 = cdec(10000)
    su2 = cdec(1.02)
    total = cdec(su1 * su2)

■比較演算子

  ・VB の比較演算子は、次のとおりである。

    =       等しい
    <>      等しくない
    >       より小さい
    >=      より小さいか等しい
    <       より大きい
    <=      より大きいか等しい
    and     かつ
    or      または

    dim a as double

    a = 10
    if a = 10 then            '** a は 10 と等しい
    if a <> 10 then           '** a は 10 以外
    if a > 10 then            '** a は 10 より大きい
    if a >= 10 then           '** a は 10 と等しいか大きい
    if a < 10 then            '** a は 10 より小さい
    if a <= 10 then           '** a は 10 と等しいか小さい
    if a = 10 or a = 20 then  '** a は 10 か、20 と等しい

    dim s as string

    s = "abc"
    if s = "abc" then         '** s は "abc" と等しい
    if s <> "" then           '** s は空でない
    if s > "aaa" then         '** s は "aaa" より大きい

■論理演算子、ビット演算子

  ・VB の論理演算子は、次のとおりである。
    ビット操作などに、よく使用する。

    and  論理積
    or   論理和
    not  反転
    xor  排他論理和

    dim a as long

    a = &H0f and &Hf3         '** 00001111B and 11110011B = 00000011B
    a = &H0f or &Hf3          '** 00001111B or  11110011B = 11111111B
    a = not &H0f              '** not 00001111B           = 11110000B
    a = &H0f xor &Hf3         '** 00001111B xor 11110011B = 11111100B

  ・通常の integer、long 型では、byte 上位のビットが影響を受ける。
    例えば、ビット反転では、次のように &HFF の and ビットマスクで、
    byte 値にすると良い。

  dim a as integer

  a = &HC6
  a = (Not a) And &HFF
  msgbox a

■is 関数

  ・変数などの値を調べる is で始まる関数は、次のとおりである。

    IsArray(変数)    配列か調べる
    IsDate(変数)     日付か調べる
    IsEmpty(変数)    使われているか調べる
    IsNull(変数)     NULL 値か調べる
    IsNumeric(変数)  数値か調べる
    IsObject(変数)   オブシェクトか調べる

    dim a as variant

    a = 123
    if IsNumeric(a) then      '** a は数値

■VB 入門編資料
■VB 基礎編資料
■VB ビジュアル編資料
■VB テクニック編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK