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

            不戒廟

            求助:CString Format自身的溢出的問題

            以下是代碼

            1 CString strMsg1 = "確認要刪除 %s 嗎?";
            2 CString title = "標題";
            3 StrMsg1.Format(strMsg1,title");
            以上這段代碼出錯
            Expression:("Buffer too small",0)

            而換成

            1 CString strMsg1 ;
            2 CString title = "標題";
            3 StrMsg1.Format("確認要刪除 %s 嗎?",title");
            就不出錯了

            環境:Win2k3_En_Sp2 + VS2005

            各位達人,能告訴我是什么原因。

            posted on 2008-07-19 11:07 不戒大師 閱讀(3759) 評論(9)  編輯 收藏 引用

            Feedback

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 11:35 斯卡

            不明白你的title后為什么要加"  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 12:06 三不戒大師

            title值是變量啊,并不是固定值
              回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題[未登錄] 2008-07-19 12:15 Kevin

            title 不是字符串對象, 而不是char指針, 你應該 (LPCSTR)title 才對, 因為CString重載了LPCSTR, 這樣在運行時才能自動轉換成char指針, 匹配到 %s  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題[未登錄] 2008-07-19 12:16 Kevin

            改一下"title 不是字符串對象" 應為 "title是CString對象"  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 12:40 陳梓瀚(vczh)

            CString能隱式轉換到LPCTSTR的,這個倒不是問題。難道CString非空的時候,Format就默認『該對象被重新利用,而不是重新構造一個新的CString對象』?  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 12:54 wxyz

            CString::Format
            void Format( LPCTSTR lpszFormat, ... );

            void Format( UINT nFormatID, ... );

            Parameters

            lpszFormat

            A format-control string.

            nFormatID

            The string resource identifier that contains the format-control string.

            Remarks

            Call this member function to write formatted data to a CString in the same way that sprintf formats data into a C-style character array. This function formats and stores a series of characters and values in the CString. Each optional argument (if any) is converted and output according to the corresponding format specification in lpszFormat or from the string resource identified by nFormatID.
            ////!!!!!這地方好像說了.
            The call will fail if the string object itself is offered as a parameter to Format. For example, the following code:

            CString str = "Some Data";
            str.Format("%s%d", str, 123); // Attention: str is also used in the parameter list.

            will cause unpredictable results.
            ////!!!!
            When you pass a character string as an optional argument, you must cast it explicitly as LPCTSTR. The format has the same form and function as the format argument for the printf function. (For a description of the format and arguments, seeprintf in the Run-Time Library Reference.) A null character is appended to the end of the characters written.

              回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 16:01 三不戒大師

            @wxyz
            謝謝,終于弄明白是怎么回事了  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題 2008-07-19 17:01 陳梓瀚(vczh)

            經常看到msdn里面把bug當成feature……  回復  更多評論   

            # re: 求助:CString Format自身的溢出的問題[未登錄] 2008-07-20 08:55 Leo

            @陳梓瀚(vczh)
            這本來就是一種未定義情況,如同snprintf中將自己作為一個參數一樣…  回復  更多評論   


            My Links

            Blog Stats

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久成人18免费网站| 日本久久久久久久久久| 亚洲av日韩精品久久久久久a| 狠狠精品久久久无码中文字幕| 综合久久国产九一剧情麻豆| 久久丫精品国产亚洲av不卡| 国产午夜久久影院| 亚洲v国产v天堂a无码久久| 亚洲AV无码成人网站久久精品大| 一本久久久久久久| 久久久久久久久久久精品尤物| a高清免费毛片久久| 亚洲综合久久夜AV | WWW婷婷AV久久久影片| 无码任你躁久久久久久老妇| 国产午夜精品久久久久免费视| 色偷偷88欧美精品久久久| 少妇高潮惨叫久久久久久| 久久97精品久久久久久久不卡| 人妻无码久久精品| 国产精品成人99久久久久91gav| 久久久久高潮综合影院| 久久久久久A亚洲欧洲AV冫| 久久精品人人做人人爽97| 久久这里有精品| 久久久久久久久久免免费精品| 久久久久99精品成人片欧美| 热久久最新网站获取| 久久福利片| 久久久久国产精品麻豆AR影院| 66精品综合久久久久久久| www久久久天天com| 久久久久久久99精品免费观看| 日韩精品久久无码人妻中文字幕| 久久只有这精品99| 狠狠色丁香久久婷婷综合蜜芽五月| 久久人人爽人爽人人爽av| 久久久久婷婷| 亚洲午夜精品久久久久久浪潮 | 国产综合成人久久大片91| 国产精品99精品久久免费|