自分がC# (.NET Framework) を使っていて一番の不満かもしれないことの一つに、memcpy (CopyMemory) が無いことが挙げられます。普通はCopyMemoryをDllImportすれば解決ですが、Linux等への移植性まで考えるとWin32APIを使うわけにはいきません。以下では、DllImportを使わない代替案をいくつか考えてみます。 Marshal.Copy 一番オーソドックスかと思われる方法です。System.Runtime.InteropServices.Marshal.Copyを使い、一度マネージ配列を経由させてコピーします。メモリを余計に食うのが気になりますが、今はあまり気にしなくてもいい時代かもしれません。 static void CopyMemory(IntPtr dst, IntPtr src, int size) { byte[] temp