一个奇怪的CString 问题?求教!

nullname 2003-11-12 02:57:14
一段很简单的代码:
CString sBackUpPath;
GetPrivateProfileString("BackUp","Path","C:\\Backup",sBackUpPath.GetBuffer(128),128,"C:\\ini.ini");
//这个时候察看sBackUpPath的值是"C:\\Backup"
CString ttt=sBackUpPath+"UUU;
//而这个时候ttt的值是"UUU" ,这是为什么?
...全文
39 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
topwork 2003-11-12
  • 打赏
  • 举报
回复
为什么要调用ReleaseBuffer,请大家看下面的MSDN说明:
If you use the pointer returned by GetBuffer to change the string contents, you must call ReleaseBuffer before using any other CString member functions.
nullname 2003-11-12
  • 打赏
  • 举报
回复
用CString 方便一些。
flinming 2003-11-12
  • 打赏
  • 举报
回复
补充下你用cstring取,还不如,直接用
char sBackUpPath[128];
GetPrivateProfileString("BackUp","Path",NULL,sBackUpPath,128,"C:\\ini.ini");
zhangnanonnet 2003-11-12
  • 打赏
  • 举报
回复
加sBackUpPath.ReleaseBuffer();不过是挺奇怪的
flinming 2003-11-12
  • 打赏
  • 举报
回复
GetPrivateProfileString("BackUp","Path","C:\\Backup",sBackUpPath.GetBuffer(128),128,"C:\\ini.ini");

第三个参数,为NULL代替
yintongshun 2003-11-12
  • 打赏
  • 举报
回复
我试了下面的:
CString sBackUpPath="c:\\bak";
CString ttt=sBackUpPath+"UUU";
ttt为"c:\bakUUU"
rockersz 2003-11-12
  • 打赏
  • 举报
回复
CString sBackUpPath;
GetPrivateProfileString("BackUp","Path","C:\\Backup",sBackUpPath.GetBuffer(128),128,"C:\\ini.ini");
//这个时候察看sBackUpPath的值是"C:\\Backup"

////////////加一句:
sBackUpPath.ReleaseBuffer();

CString ttt=sBackUpPath+"UUU;
ray21 2003-11-12
  • 打赏
  • 举报
回复
你最好使用 _T("UUU")
topwork 2003-11-12
  • 打赏
  • 举报
回复
调用完GetPrivateProfileString以后先调用一下CString::ReleaseBuffer,如果不调用那么这个CString的内容不会被更新。
nullname 2003-11-12
  • 打赏
  • 举报
回复
那位大哥拷贝上面代码试试

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧