CString如何转化为LPBYTE?
CString如何转化为LPBYTE?
C_to_LP(CString str)
{
....
return lp_str //lp_str是转化完的LPBYTE类型的变量
}
请帮我实现
问题点数:20、回复次数:2Top
1 楼i_noname(晚九朝五)回复于 2005-09-06 11:24:36 得分 15
CString s("abc");
LPBYTE p = (LPBYTE)(LPCTSTR)s;
另外,你的函数有点问题,最好使用引用来传值,直接传的话构造的是一个临时对象,函数结束后返回的是一个野指针
LPBYTE C_to_LP(CString &str)
{
return (LPBYTE)(LPCTSTR)str //lp_str是转化完的LPBYTE类型的变量
}Top
2 楼jjiaming(阿熊)回复于 2005-09-06 18:24:29 得分 5
楼上正解
但楼主要注意的就是,CString这个类有些特殊,它的buffer地址并不一定是固定的,楼主尽量做到即用即取,也就是说,返回的LPBYTE并不是每时每刻都有效的,一旦CString对象的buffer地址改变了,LPBYTE 可能就变成一个野指针了Top




