• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            OnTheWay2012
            埋葬昨天的我,迎來重生的我!
            posts - 15,  comments - 89,  trackbacks - 0

            為了鍛煉自己,寫了下面幾個函數。
            (1)把一個unsigned int 轉換成字符型的IP
            (2)鏈表插入元素,升序

              1#include <WinSock2.h>
              2#include <iostream>
              3#include <assert.h>
              4
              5using namespace std;
              6
              7void ChangeToIp(unsigned int dwData, char *pStr)
              8{
              9    assert(NULL != pStr);
             10    if (NULL != pStr)
             11    {
             12        size_t index = 0;
             13        unsigned char *pCh = (unsigned char *)(&dwData);
             14        for (size_t i = 0 ; i < 4 ; i++)
             15        {
             16            unsigned short int nData(pCh[i]); 
             17            pStr[index++= (char)(nData / 100 + '0');
             18
             19            nData %= 100;
             20            pStr[index++= (char)(nData / 10 + '0');
             21
             22            pStr[index++= (char)(nData % 10 + '0');
             23
             24            if(3 > i)
             25            {
             26                pStr[index++= '.';
             27            }

             28        }

             29    }

             30}

             31
             32template<typename T>
             33struct Node
             34{
             35    Node() : m_Data(T())
             36    {
             37        m_pNext = NULL;
             38    }

             39
             40    T m_Data;
             41    Node<T> *m_pNext;
             42}
            ;
             43
             44template<typename T>
             45void InsertNode(Node<T> *pHead, const T &value)
             46{
             47    assert(NULL != pHead);
             48    if (NULL != pHead)
             49    {
             50        if(NULL != pHead->m_pNext)//除了頭結點還有其他結點
             51        {
             52            while(NULL != pHead->m_pNext && pHead->m_pNext->m_Data < value)
             53            {
             54                pHead = pHead->m_pNext;
             55            }

             56        }

             57        else //只有頭結點
             58        {
             59            ;
             60        }

             61
             62        Node<T> *pTemp = new Node<T>;
             63        pTemp->m_Data = value;
             64        pTemp->m_pNext = pHead->m_pNext;
             65        pHead->m_pNext = pTemp;
             66    }

             67}

             68
             69template<typename T>
             70void PrintLinkList(Node<T> *pHead)
             71{
             72    assert(NULL != pHead);
             73    if (NULL != pHead)
             74    {
             75        pHead = pHead->m_pNext;
             76        while(NULL != pHead)
             77        {
             78            cout<< pHead->m_Data <<endl;
             79            pHead = pHead->m_pNext;
             80        }

             81    }

             82}

             83
             84template<typename T>
             85void ReleaseLinkList(Node<T> *pHead)
             86{
             87    assert(NULL != pHead);
             88    if (NULL != pHead)
             89    {
             90        Node<T> *pNext = pHead->m_pNext;
             91        delete pHead;
             92        while(NULL != pNext)
             93        {
             94            pHead = pNext;
             95            pNext = pHead->m_pNext;
             96            delete pHead;
             97        }

             98    }

             99}

            100
            101void main()
            102{
            103    Node<int> *pHead = new  Node<int>;
            104    InsertNode(pHead, -1);
            105    InsertNode(pHead, -2);
            106    InsertNode(pHead, 8);
            107    InsertNode(pHead, 34);
            108    InsertNode(pHead, 4);
            109
            110    PrintLinkList(pHead);
            111
            112    ReleaseLinkList(pHead);
            113}
            posted on 2010-05-25 20:37 OnTheWay 閱讀(791) 評論(0)  編輯 收藏 引用 所屬分類: 算法

            <2010年11月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿(4)

            隨筆分類

            隨筆檔案

            友情連接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            精品综合久久久久久888蜜芽| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 2021少妇久久久久久久久久| 久久精品国产亚洲欧美| 久久精品国产精品亚洲| 久久只有这里有精品4| 热re99久久精品国99热| 99久久人人爽亚洲精品美女| 亚洲日本va午夜中文字幕久久| 人人狠狠综合久久88成人| 99久久夜色精品国产网站| 97精品伊人久久大香线蕉| 久久成人影院精品777| 老司机午夜网站国内精品久久久久久久久| 欧美日韩精品久久久免费观看| 久久国产色AV免费观看| 开心久久婷婷综合中文字幕| 国产精品免费看久久久| 久久亚洲国产精品五月天婷| 久久精品国产99久久无毒不卡| 久久久91人妻无码精品蜜桃HD| 少妇内射兰兰久久| 久久国产免费| 97久久天天综合色天天综合色hd| 人人狠狠综合88综合久久| 国产精品久久久久影视不卡| 亚洲国产天堂久久久久久| 久久久久久久综合日本亚洲| 久久妇女高潮几次MBA| 久久国产三级无码一区二区| 久久99精品久久久久久久不卡| 一本色道久久88综合日韩精品 | 久久精品中文字幕一区| 精品久久久久久久久午夜福利| 色悠久久久久久久综合网| 天天综合久久久网| 韩国免费A级毛片久久| 久久久久亚洲AV无码专区首JN | 青草久久久国产线免观| 亚洲国产成人久久精品影视 | 久久久久无码国产精品不卡|