从Visual Studio移动C代码到Linux

从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编译。

+0

能否请您格式化使用“101010”按钮的代码。打败我吧! – 2010-08-28 22:20:29

+0

我认为问题出在你没有粘贴的代码的一部分。 – jilles 2010-08-28 22:24:05

+0

请问您的代码编译没有任何警告:使用-ansi -pedantic -W -Wall -Werror – 2010-08-28 22:29:30

我没有看到你的代码的问题。检查您向我们展示的代码之外的代码可能是明智的选择。

+1

我发现我的问题是什么无论如何,我没有在比较函数defenition thx上使用cast – 2010-08-29 00:07:07