program:
[DllImport("msvcrt.dll", CallingConvention = CallingConvention.Cdecl)]
static extern int memcmp(byte[] b1, byte[] b2, long count);
/// <summary>
/// 比较数组
/// </summary>
/// <param name="b1"></param>
/// <param name="b2"></param>
/// <returns></returns>
static bool ByteArrayCompare(byte[] b1, byte[] b2)
{
return b1.Length == b2.Length && memcmp(b1, b2, b1.Length) == 0;
}
static void Main(string[] args)
{
string str = "czj";
string str1 = "jzc";
byte[] b1 = System.Text.Encoding.Default.GetBytes(str);
byte[] b2 = System.Text.Encoding.Default.GetBytes(str);
byte[] b3 = System.Text.Encoding.Default.GetBytes(str1);
//一
{
Console.WriteLine(ByteArrayCompare(b1, b2));//true
Console.WriteLine(ByteArrayCompare(b1, b3));//false
}
//二
{
Console.WriteLine(b1.SequenceEqual(b2));//true
Console.WriteLine(b1.SequenceEqual(b3));//false
}
Console.ReadKey();
}
output: