• <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>
            面對現(xiàn)實(shí),超越自己
            逆水行舟,不進(jìn)則退
            posts - 269,comments - 32,trackbacks - 0

            結(jié)構(gòu)體CString問題

            1 struct sTest
            2 {
            3     CString addr;
            4     int port;
            5 };

                 定義CString addr時(shí),編譯器會在棧里分配一塊內(nèi)存空間,然后調(diào)用CString的默認(rèn)構(gòu)造函數(shù)初始化addr,此時(shí)Cstring內(nèi)部的m_pchData指向一個(gè)空字串 " ",而不是NULL。cstring在結(jié)構(gòu)里也是一樣的,結(jié)構(gòu)無論是從棧中分配如 :
                 ME_REFRESH   lpmerefresh
                 或從堆中分配 :  
                 lpmerefresh=new   ME_REFRESH;
                 type為cstring的分量都會被調(diào)用默認(rèn)構(gòu)造函數(shù)初始化name,使Cstring內(nèi)部的m_pchData指向一個(gè)空字串 " ",該空字串是afxEmptyString的m_pchData。memset CString時(shí),該m_pchData便指向了NULL,那么就表明該CString的值被破壞了,所以報(bào)錯。
                 結(jié)構(gòu)體成員如果僅僅是基本類型成員可以直接memset(ST,0,sizeof(ST)),但結(jié)構(gòu)體里面包含有指針,直接memset是不行的,因?yàn)橹羔槼蓡T的sizeof都是4字節(jié)。你應(yīng)該專門對指針成員進(jìn)行memset,sizeof對于包含指針的結(jié)構(gòu)獲得的長度不是你想要的。

            posted on 2012-04-24 13:56 王海光 閱讀(1873) 評論(0)  編輯 收藏 引用 所屬分類: MFC
            久久久久一本毛久久久| 久久久一本精品99久久精品88| 久久99国内精品自在现线| 久久亚洲AV成人无码软件| 无码任你躁久久久久久久| 久久一区二区三区免费| 日日狠狠久久偷偷色综合96蜜桃| 久久午夜综合久久| 狠狠色丁香婷婷久久综合五月| 久久婷婷五月综合国产尤物app| 欧美一级久久久久久久大| 波多野结衣久久一区二区| 国产成人精品综合久久久| 久久精品国产亚洲AV电影| 天天久久狠狠色综合| 性做久久久久久久久久久| 久久精品成人欧美大片| 丁香五月网久久综合| 精品久久久久中文字| 久久亚洲精品无码VA大香大香| 亚洲AV无码久久| 99久久免费国产精品| 久久精品综合网| 香蕉久久夜色精品国产小说| 亚洲国产精品综合久久一线| 久久久久久亚洲AV无码专区| 精品无码人妻久久久久久| 囯产极品美女高潮无套久久久 | 久久精品二区| 久久久久亚洲av综合波多野结衣 | 久久精品国产亚洲AV电影| 精品视频久久久久| 久久综合香蕉国产蜜臀AV| 91精品婷婷国产综合久久| 久久精品无码一区二区WWW| 久久精品国产免费一区| 久久人人爽人人爽人人片AV麻烦| 色综合久久精品中文字幕首页| 人妻无码αv中文字幕久久琪琪布| 久久精品成人影院| 伊人久久精品线影院|