数组的平等性c

use*_*673 4 c arrays

我必须检查两个数组(1-D)与整数元素的相等性.

我明白没有直接的比较方式.所以我正在进行基本的迭代并检查每个元素的相等性.

 for ( int i = 0 ; i < len ; i++) {
    // Equality check
Run Code Online (Sandbox Code Playgroud)

在C中测试数组相等性的最有效方法是什么?我可以以某种方式逃脱循环(为......)吗?

hac*_*cks 5

使用memcmp函数比较两个相等长度的数组.

int a = memcmp(arr1, arr2, sizeof(arr1));
if(!a)
    printf("Arrays are equal\n");
else
    printf("Arrays are not equal\n");
Run Code Online (Sandbox Code Playgroud)

  • 很难想象如果两个数组的长度不同,两个数组是如何相等的. (3认同)
  • @CareyGregory; 我没有提到它对*等长*的数组有效. (2认同)