从Visual Studio移动C代码到Linux
问题描述:
你好,我想,当我对它进行排序它可以在Visual Studio中,但是当我将它移动到Linux中的链表没有得到整理出于某种原因排序链表 。 我的种种得到的指针列表的指针,这是我的排序代码: 我这样调用该函数: SortQueue(&pprocessQueue, ProcessPrIdCompare);
,这里是我的功能 函数使用EnqueueInOrder这使他的位置的每一个环节。从Visual Studio移动C代码到Linux
void SortQueue(Queue **pqueue, CompareFunction CompareElements)
{
Queue *ptemp = CreateQueue((*pqueue)->CopyElement,
(*pqueue)->FreeElement,
CompareElements,
(*pqueue)->PrintElement);
(*pqueue)->CompareElements = CompareElements;
while (!(IsEmpty(*pqueue) == SUCCESS))
EnqueueInOrder(ptemp, DequeueLink(*pqueue));
while (!(IsEmpty(ptemp) == SUCCESS))
EnqueueInOrder(*pqueue, DequeueLink(ptemp));
FreeQueue(ptemp);
}
还有一件事我使用gcc编译。
答
我没有看到你的代码的问题。检查您向我们展示的代码之外的代码可能是明智的选择。
+1
我发现我的问题是什么无论如何,我没有在比较函数defenition thx上使用cast – 2010-08-29 00:07:07
能否请您格式化使用“101010”按钮的代码。打败我吧! – 2010-08-28 22:20:29
我认为问题出在你没有粘贴的代码的一部分。 – jilles 2010-08-28 22:24:05
请问您的代码编译没有任何警告:使用-ansi -pedantic -W -Wall -Werror – 2010-08-28 22:29:30