我正在使用Ariel Faigon的排序库,可在此处找到:
http://www.yendor.com/programming/sort/
我能够在Linux上运行所有代码,但不幸的是,当尝试在Mac上使用GCC进行编译时,其默认stdlib.h包含另一个heapsort,不幸的是,这会导致冲突的类型错误。
这是Apple heapsort的手册页:
http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/heapsort.3.html
在排序库标头中注释掉heapsort会引起很多问题。 (对双关语)
我还简短地考虑过注释掉我对stdlib.h的使用,但是我使用了malloc和realloc,因此根本无法使用。
有任何想法吗?
最佳答案
将Ariel Faigon函数的使用隔离在一个不需要使用<stdlib.h>
的单个微型文件中。确保在标准C库之前链接Ariel Faigon的库。
关于c - OS X在stdlib.h中包含heapsort,与sort库中的heapsort冲突,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4976904/