• <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)

            隨筆分類

            隨筆檔案

            友情連接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲综合精品香蕉久久网97 | 99久久中文字幕| 久久精品国产网红主播| 精品久久香蕉国产线看观看亚洲| 久久99国产亚洲高清观看首页| 国产综合精品久久亚洲| 欧美精品九九99久久在观看| 色综合久久无码五十路人妻| yellow中文字幕久久网| 亚洲人成无码久久电影网站| 日韩精品久久久久久久电影蜜臀| 久久香蕉国产线看观看99| 亚洲精品第一综合99久久| 精品久久久久久无码专区不卡| 久久久久亚洲?V成人无码| 精品永久久福利一区二区| 亚洲色欲久久久久综合网| 久久精品草草草| 久久久久久午夜成人影院| 亚洲一级Av无码毛片久久精品| 麻豆精品久久久一区二区| 久久久久久久97| 青青热久久国产久精品| 久久无码av三级| 东京热TOKYO综合久久精品| 久久毛片一区二区| 天天影视色香欲综合久久| 精品久久久久久久中文字幕| 久久se精品一区精品二区| 久久久久久国产精品无码超碰| 久久久久久久精品妇女99| 国产69精品久久久久观看软件| 国产午夜福利精品久久| 欧美日韩中文字幕久久伊人| 97久久精品无码一区二区| 国产成人精品白浆久久69| 无码伊人66久久大杳蕉网站谷歌| 欧美精品国产综合久久| 久久精品一区二区三区AV| 亚洲国产精品无码久久久秋霞2| 国产成人无码精品久久久性色 |