我在DLL里面写了一个函数:
void p4(LPCTSTR rr)
{
rr="dddd";
}
我在调用DLL时,传给p4(LPCTSTR rr)一个CHAR*,具体如下
char a[10];
a[0]='1';
m_a->p4(a);
CString str=_T(*a)
AfxMessageBox(str);
我的想法是给p4传一个char*,然后经过P4处理后,a的值变成dddd,最后输出,我写的总不行。请问怎么做呀????
void p4(LPCTSTR rr)
{
rr="dddd";
}
我在调用DLL时,传给p4(LPCTSTR rr)一个CHAR*,具体如下
char a[10];
a[0]='1';
m_a->p4(a);
CString str=_T(*a)
AfxMessageBox(str);
我的想法是给p4传一个char*,然后经过P4处理后,a的值变成dddd,最后输出,我写的总不行。请问怎么做呀????
字符串拷贝要用strcpy(...)
strncpy之类的可以实现你的要求
但安全性比较查!
这是指向const string的指针,即这个指针指向地址里的内容不能被改变。
在pr()函数里,不能改变rr所指内容的值。
这就是原因
rr="dddd";//error
我希望给DLL传一个CHAR*,经过DLL处理完后,把结果返回到CHAR*,怎么做。
我在DLL的函数的参数中怎么不能定义CHAR*,比如p4(char* p)
有谁知道用MFC做DLL时,定义参数时怎么定义成CHAR*呀?
不过还是谢谢各位。 catyou(雨后春笋) 你能告诉我你是怎么做的吗?