gpt4 book ai didi

c++ - 比较 C++ 中的 voids

转载 作者:太空宇宙 更新时间:2023-11-04 16:24:54 25 4
gpt4 key购买 nike

尝试比较排序算法的空白。到目前为止我有这个,但如果你将它们转换为整数,它有点违背了 IMO 的目的。有没有办法比较空隙?我的教授没时间了,怎么被困在网上。任何帮助表示赞赏。谢谢

int fcmp(const void *one, const void *two)
{
if (*(int*)one > *(int*)two) return 1;
if (*(int*)one < *(int*)two) return -1;
return 0;
}

最佳答案

假设想法是在qsort 的上下文中使用fcmp ,您的代码完全有效。

因为 qsort 不关心返回值是 1 还是 -1 并且会取任何正数或负数,这个版本甚至更短,但也可以与 qsort 一起使用:

int fcmp (const void * one, const void * two)
{
return ( *(int*)one - *(int*)two );
}

qsort 使用void* 的原因是让您对不同的数据类型使用相同的算法。

关于c++ - 比较 C++ 中的 voids,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13042254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com