我想比較部分byte[]
高效 - 所以我明白memcmp()
應該使用。如何在字節[](帶偏移量)的兩部分上調用memcmp()?
我知道我可以使用的PInvoke調用memcmp()
- Comparing two byte arrays in .NET
但是,我想比較byte[]
只有部分 - 使用膠版,並沒有memcmp()
與偏移,因爲它使用指針。
int CompareBuffers(byte[] buffer1, int offset1, byte[] buffer2, int offset2, int count)
{
// Somehow call memcmp(&buffer1+offset1, &buffer2+offset2, count)
}
我應該使用C++/CLI來做到這一點嗎?
我應該在IntPtr中使用PInvoke嗎?怎麼樣?
謝謝。
爲什麼你認爲'memcmp'會比C#相當於更有效率? – jalf 2010-06-08 20:00:25
與memcmp()等效的.NET是什麼?我不想自己寫這篇文章,因爲它要麼效率低下,要麼是錯誤的。 – brickner 2010-06-08 20:07:32
閱讀此主題有關http://www.codeproject.com/Messages/863856/Re-memcmp-in-Csharp.aspx – lsalamon 2010-06-08 20:17:22