どうせポインタのインクリメントとかif (*p)とかも全部修正しないといけないだろ
こういうの作ってCのコードを無理やり移植したことある
struct ArrayPtr<T> {
 public T[] Array; public int Offset;
 public T item[int index] { return Array[Offset + index]; }
 ++, ==, != , +, -などの演算子のオーバーロード
 T[]からのimplicit operator
}