Pointer を使う

123

C# で unsafe の設定をして、int 型の Pointer を使います。
C# でポインタを使うときは unsafe の設定が必要です。

プログラムの説明

  1. Pointer は一歩間違えればシステム領域を破壊しかねません。
    C++ では普通に使っていた機能ですが、C# では特別な設定(unsafe)をして覚悟の上で使います。
    厳重に管理されていると言うことは、なるべく使わないのがルールのようです。
    とは言え C++ に慣れ親しんだ私などは、すぐ使いたくなるのですが。 (^_^;)
  2. Pointer を使ったプログラムは、CLI の環境で通常のコンソールモードのように実行することは出来ません。
    空のプロジェクトから構築して、次の設定をして下さい。
    unsafe の設定画像
  3. Pointer の使い方は C++ と同じです。
    * p には、int型領域のアドレス(ポインタ)が格納されます。
    int i=123;
    int * p = &i;
    * p が指し示す領域の値(123) をコンソールに表示します。
    Console.WriteLine(*p);
  4. ソースコードです。
    Main() 関数の頭に unsafe を記述しています。
    /***********************************/
    /*★ int 型のポインタ    前田 稔 ★*/
    /***********************************/
    using System;
    
    class Pointer
    {   unsafe public static void Main()
        {
            int i=123;
            int * p = &i;
            Console.WriteLine(*p);
            Console.ReadLine();
        }
    }
    

超初心者のプログラム入門(C# Frame Work)