• <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>
            春暖花開
            雪化了,花開了,春天來了
            posts - 149,comments - 125,trackbacks - 0

            今天在進行memcpy出現了一些問題。
            原因是這樣的:
            我定義了這樣一個接口,里面涉及memcpy操作。

            舉個例子吧,如接口addItem,
            void addItem(int iType, LPVOID *pItem);

            里面有一個對象是TCHAR szStr[512];
            我直接進行了這樣的拷貝,memcpy(szStr, pItem, sizeof(szStr));
            今天就出問題了。提示某塊內存無法訪問。于是重新看這個問題。為什么會這么寫這樣的接口呢?
            我原先寫的是 void addItem(int iType, TCHAR *pItem);
            后來由于需求的變化,變成了LPVOID。改成這個以后,原先的字符串wcscpy就變成了memcpy。這個一直沒有引起警覺。其實這一步的改變,就應該對接口做相應的調整,接口應該變為
            void addItem(int iType, LPVOID *pItem, DWORD cbItem);
            增加一個參數來說明pItem的大小。然而這一步沒有做。

            所以今天的教訓就是要注意修改接口的時候,注意相應的變化。

            還有是字符串的操作問題,寬字符和ASCII字符串的操作要注意。

            posted on 2009-07-29 11:58 Sandy 閱讀(197) 評論(0)  編輯 收藏 引用 所屬分類: 日??偨Y
            亚洲七七久久精品中文国产| 99久久精品国产一区二区| 青青青国产精品国产精品久久久久| 国产成人精品久久一区二区三区| 国产精品久久久99| 亚洲AV无码1区2区久久| 国産精品久久久久久久| 婷婷久久香蕉五月综合加勒比| 久久精品国产精品国产精品污 | 久久亚洲sm情趣捆绑调教| 中文字幕乱码人妻无码久久| 久久精品国产99国产精品澳门 | 国产亚州精品女人久久久久久 | 久久精品二区| 国产午夜久久影院| 亚洲va久久久噜噜噜久久天堂| 婷婷久久综合九色综合98| 亚洲国产精品无码久久| 伊人色综合久久天天人守人婷| 久久精品国产亚洲沈樵| 亚洲人成网亚洲欧洲无码久久| 久久伊人影视| 精品欧美一区二区三区久久久| 久久综合狠狠综合久久综合88| 亚洲国产小视频精品久久久三级| A级毛片无码久久精品免费| 久久精品国产亚洲av日韩| 99久久精品免费看国产一区二区三区| 久久久久综合中文字幕 | 久久国产精品久久精品国产| 欧美精品久久久久久久自慰| 久久99这里只有精品国产| 久久e热在这里只有国产中文精品99| 国内精品久久久久久久97牛牛| 久久久一本精品99久久精品88| 久久久久久久综合狠狠综合| 亚洲精品tv久久久久久久久久| 亚洲v国产v天堂a无码久久| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久精品国产99国产精偷| 久久精品国产亚洲一区二区|