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

            為了鍛煉自己,寫了下面幾個函數(shù)。
            (1)把一個unsigned int 轉(zhuǎn)換成字符型的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)//除了頭結(jié)點還有其他結(jié)點
             51        {
             52            while(NULL != pHead->m_pNext && pHead->m_pNext->m_Data < value)
             53            {
             54                pHead = pHead->m_pNext;
             55            }

             56        }

             57        else //只有頭結(jié)點
             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 閱讀(814) 評論(0)  編輯 收藏 引用 所屬分類: 算法

            <2010年5月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿(4)

            隨筆分類

            隨筆檔案

            友情連接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            精品水蜜桃久久久久久久| 综合久久精品色| 久久国产香蕉视频| 亚洲精品无码久久毛片| 久久久久久综合网天天| 大蕉久久伊人中文字幕| 久久五月精品中文字幕| 久久99久久99精品免视看动漫| 亚洲天堂久久精品| 亚洲精品国产自在久久| 996久久国产精品线观看| 一本综合久久国产二区| 一本久久久久久久| 久久久噜噜噜www成人网| 久久一区二区免费播放| 国产精品成人无码久久久久久| 久久丫精品国产亚洲av| 伊色综合久久之综合久久| 99热成人精品免费久久| 久久伊人精品青青草原高清| 色偷偷88888欧美精品久久久| 伊人久久无码精品中文字幕| 久久精品国产清自在天天线| 国产精品99久久久久久www| 国内精品伊人久久久久AV影院| 久久天天躁夜夜躁狠狠躁2022 | 久久久久亚洲精品男人的天堂| 久久夜色精品国产噜噜亚洲AV| 亚洲а∨天堂久久精品| 色婷婷综合久久久久中文字幕 | 亚洲中文字幕无码久久综合网| 青春久久| 久久综合九色综合网站| 亚洲国产成人久久综合野外| 中文字幕久久精品| 亚洲精品第一综合99久久| 亚洲国产精品嫩草影院久久| 亚洲精品无码久久不卡| 久久亚洲AV无码精品色午夜| 国产69精品久久久久观看软件| 亚洲精品成人久久久|