2009年12月24日木曜日

MaxValue、MinValueを使用してint型、double型、uint型の変数を定義し、それぞれをインクリメント、デクリメントしてオーバーフローさせるとどうなるか確認してみる。
using System;


class MainClass
{
    static void Main()
    {
        try
        {
            int a = int.MaxValue;
            double b = double.MaxValue;
            uint c = uint.MaxValue;
            int d = int.MinValue;
            double e = double.MinValue;
            uint f = uint.MinValue;


            Console.WriteLine(a);
            Console.WriteLine(b);
            Console.WriteLine(c);
            Console.WriteLine(d);
            Console.WriteLine(e);
            Console.WriteLine(f);
            Console.WriteLine("");


            a++;
            b++;
            c++;
            d--;
            e--;
            f--;


            Console.WriteLine(a);
            Console.WriteLine(b);
            Console.WriteLine(c);
            Console.WriteLine(d);
            Console.WriteLine(e);
            Console.WriteLine(f);
        }
        catch (Exception error)
        {
            Console.WriteLine(error.Message);
        }
        finally
        {
            Console.WriteLine("終了");
        }
    }
}


結果
例外にはならない。

0 コメント:

コメントを投稿