unsafe

    2

    2答えて

    現在、ネイティブdllへの呼び出しからマーシャリングされた構造を反映したコードに取り組んでいます。いくつかの構造体には、NULL終端のポインタ配列を指すIntPtr *フィールドが含まれています。これらのフィールドには特別な処理が必要です。構造体を反映すると、カスタム属性でマークされているため、これらのフィールドを認識できます。 以下は、私が何をしようとしている示しています public void

    6

    3答えて

    私は、LockBitsメソッドを使ってビットマップ操作を行い、ポインタを使ってビットマップデータに直接アクセスするコードをいくつか持っています。もちろん、安全ではないブロックにこのコードをラップする必要があります。これは、コードがMonoで動作しないことを意味するのだろうかと思いました。 私はBitmapクラスがMonoで利用可能であると仮定していますが、それはおそらくもう1つのdeal-brea

    1

    2答えて

    のクラス、Iは、整数配列に基づいており、データベースの列に格納することができる一意の鍵を生成する効率的方法に探しています。 Cの昔に、私は、配列のメモリ位置のコピーを作成してから、私のキーとして役立つであろう文字列としてそれを返すことができます。私はまだC#で​​それができるのかどうかはわかりませんが、私はこの方法ほど効率的な方法を探しています。助言がありますか? おかげで、 ケマル UPDATE

    3

    3答えて

    私はこのコードに関する2つのクエリ持っC. public static void Main(string[] args) { unsafe { int i = 5; int* j = &i; Console.WriteLine(j); //cannot convert from 'int*' to 'bool'

    2

    2答えて

    C#で固定バイトまたはchar [100]をマネージchar []に変換する最良の方法は何ですか?私はポインタの算術演算を使用する必要があったため、より簡単な方法があるかどうか疑問に思っています - memcpyまたは別の方法のようなもの? using System; using System.Collections.Generic; using System.Linq; using Sys

    3

    2答えて

    私は、動的に割り当てられた配列を通してデータを返すネイティブ関数のセットを扱っています。関数は参照ポインタを入力として受け取り、結果の配列を参照します。例えば :呼び出し後 typedef struct result { //..Some Members..// } int extern WINAPI getInfo(result**); 、 '結果が' *結果のNULLで終

    2

    4答えて

    への汎用ポインタに変換私はbyte[]にbyte*を変換したいのですが、私もこれを行うには、再利用可能な機能を持つようにしたい: public unsafe static T[] Create<T>(T* ptr, int length) { T[] array = new T[length]; for (int i = 0; i < length; i++)

    1

    1答えて

    これをループに変換してポインタを使用しない方法を教えてください。 byte[] InputBuffer = new byte[8]; unsafe { fixed (byte* pInputBuffer = InputBuffer) { ((long*)pInputBuffer)[0] = value; } } 私は、このページからコードを使用しようとし

    22

    4答えて

    私はバイナリデータを読み込む必要がある非常に大きなファイルがある状況に遭遇しました。 したがって、.NETのデフォルトのBinaryReaderの実装がかなり遅いことに気付きました。 .NET Reflectorでそれを見ている時に私はこれに出くわした:コンピュータは32ビットCPUが発明されて以来32ビット値で動作するように設計された方法で考えて、非常に非効率的なとして私を打つ public v

    3

    2答えて

    私はSilverlightでMiscUtil.Conversionユーティリティを使用しようとしています。私はそれをコンパイルしようとすると http://www.yoda.arachsys.com/csharp/miscutil/ が、私はSilverlightののBitConverterクラスは、これらの2つの方法がないというエラーが出ます: DoubleToInt64Bits Int64Bi