ArrayCompare
ArrayCompare
该函数用于比较两个相同类型的数组。它可以用来比较简单类型的数组或自定义结构,而不包括复杂对象,即不包含字符串、动态数组、类以及其他包含复杂结构的自定义结构。
int ArrayCompare(
const void& array1[], // first array
const void& array2[], // second array
int start1=0, // initial offset in the first array
int start2=0, // initial offset in the second array
int count=WHOLE_ARRAY // number of elements for comparison
);参数
- array1[]
[in] 第一个数组。
- array2[]
[in] 第二个数组。
- start1=0
[in] 第一个数组中元素的起始索引,比较从此索引开始。默认起始索引为0。
- start2=0
[in] 第二个数组中元素的起始索引,比较从此索引开始。默认起始索引为0。
- count=WHOLE_ARRAY
[in] 要比较的元素数量。默认情况下,两个数组的所有元素都参与比较(count=WHOLE_ARRAY)。
返回值
- -1,如果array1[]小于array2[];
- 0,如果array1[]等于array2[];
- 1,如果array1[]大于array2[];
- -2,如果出现比较数组类型不兼容或start1、start2或count值导致超出数组范围的错误。
注意
如果数组在大小上不同,且count=WHOLE_ARRAY,而其中一个数组是另一个数组的忠实子集,函数将不会返回0(数组不会被认为相等)。在这种情况下,将返回比较大小的结果:-1,如果array1[]的大小小于array2[]的大小,否则为1。
最后更新于