ÇÁ·Î±×·¡¹Ö

 3198, 1/160 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   Å»¶ó¸®½º
   ÀڷᱸÁ¶ LinkedList Áú¹®

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=2827 [º¹»ç]


LinkedList¸¦ °øºÎÇϰí Àִµ¥
Áú¹®ÀÌ ÀÖ½À´Ï´Ù.


ind addLLElement(LinkedList *pList, int position, ListNode element)
{
        int ret = FALSE;
        int i = 0;
        ListNode* pPreNode = NULL;
        ListNode* pNewNode = NULL;

        if(pList != NULL){
                if(position >=0 && position < pList->currentElementCount){
                        pNewNode = (ListNode*)malloc(sizeof(ListNode));
                        if(pNewNode != NULL){
                                *pNewNode = element;
                                pNewNode->pLink = NULL;

                                pPreNode = &(pList->headerNode);
                                for(i=0; i<pList->currentElementCount; ++i){
                                        pPreNode = pPreNode->pLink;
                                }

                                pNewNode->pLink = pPreNode->pLink;
                                pPreNode->pLink = pNewNode;

                                pList->currentElementCount++;

                                ret = TRUE;
                        }
                        else
                        {
                                printf("¿À·ù, ¸Þ¸ð¸®ÇÒ´ç addLLElement()\n");
                                return ret;
                        }
                }
                else
                {
                        printf("¿À·ù, À§Ä¡ À妽º-[%d], addElement()\n");
                }
        }
        
        return ret;
}

int main()
{
     ...
     LinkedList *pList = NULL
     LinkedListNode node;

     node.data = 5;

     pList = createLinkedList();
     addLLElement(pList, 0, node);
     ...
}


nodeÀÇ °ªÀ» º¹»çÇØ¼­ addLLElement()ÇÔ¼ö·Î º¸³»ÁØ ÈÄ¿¡
addLLElement()ÇÔ¼ö¿¡¼­ pNewNode·Î ´ëÀÔ ÇÏÀݾƿä.

pNewNode´Â ÇÔ¼ö°¡ Á¾·áµÇ¸é »ç¶óÁö´Â °Í ¾Æ´Ñ°¡¿ä?

¿ä¾à : node¸¦ Æ÷ÀÎÅÍ·Î ¾ÈÇϰí call by value·Î ó¸®Çϸé addLLElement()ÇÔ¼ö°¡ Á¾·áµÇ¹ö¸®¸é mainÇÔ¼ö¿¡ ¾Æ¹«·± ¿µÇâÀ» ÁÖÁö ¸øÇÏ´Â°Í ¾Æ´Ñ°¡¿ä?

  Hit : 3909     Date : 2010/12/30 01:37



    
ruka270 ¼Ò½º¸¦ ´ë°­ºÁ¼­ ±×·±Áö´Â ¸ð¸£°Ú´Âµ¥ ¼Ò½º»ó¿¡¼­ ¿À·ù¸¦ ãÁö ¸øÇÑ °ü°è·Î
°³³ä¿¡ ´ëÇÑ Áú¹®À̶ó°í »ý°¢ÇϰڽÀ´Ï´Ù.
¸µÅ©µå ¸®½ºÆ® µî ´ëºÎºÐÀÇ Ä¿½ºÅÒ ÀÚ·áÇüÀº Æ÷ÀÎÅ͸¦ ±âÃÊ·Î Á¶À۵˴ϴÙ.
ÄݹÙÀ̹ë·ù·Î ÇÒ°æ¿ì´Â ¾Æ¹«·± ¿µÇâÀ» ¹ÌÄ¡Áö ¸øÇÏ´Â°Ô ¸Â½À´Ï´Ù.
2010/12/30  
dawon15 pNewNode = (ListNode*)malloc(sizeof(ListNode));

º¸½Ã¸é ¾Æ½Ã°ÚÁö¸¸ µ¿ÀûÇÒ´çÀÌÁÒ
ÀÌ »óż­ ÀÌ¹Ì Element Çϳª°¡ »ý¼ºµÈ°Ì´Ï´Ù.
ÇÔ¼ö¿¡¼­ Å»ÃâÇÏ´ø ¹» ÇÏ´ø free Çϱâ Àü±îÁø ¸Þ¸ð¸® »ó¿¡ Á¸ÀçÇÏ°Ô µÇ´Â°ÅÁÒ

¸µÅ©µå ¸®½ºÆ®ÀÇ ¿ø¼Ò´Â ¹è¿­°ú ´Ù¸£°Ô ¸Þ¸ð¸®»ó ¾îµðµµ Á¸ÀçÇÕ´Ï´Ù.
±×°ÍÀ» Æ÷ÀÎÅ͸¦ ÀÌ¿ëÇØ ¿¬°á½ÃŲ°ÅÁÒ
2010/12/30  
Å»¶ó¸®½º ¾ÆÇÏ!!
À§¿¡ µÎºÐ °¨»çÇÕ´Ï´Ù.
call by value·Î´Â main¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¸øÇÏ´Â °ÍÀÌ ¸Â°í
µ¿ÀûÇÒ´çÀº ¸Þ¸ð¸®¿¡ °è¼Ó ³²´Â±º¿ä!!

°¨»çÇÕ´Ï´Ù ~ ¤»
2010/12/30