subject_17663.htm

来自「一些关于vc的问答」· HTM 代码 · 共 36 行

HTM
36
字号
<p>
序号:17663 发表者:one 发表日期:2002-10-14 11:35:05
<br>主题:如何将CString中的内容copy到char *中去呢?
<br>内容:我想调用以前用C做的库函数,因C中用的是Char*,而我现在在VC++中用的是CString,所以在<BR>调用时,就必须将CString的内容放到Char*中,但直接赋值,总出错:这两种数据类型不同,所以特求教各位大侠。<BR>另外,在C中定义的数组unsigned long A[5],而在VC++中用CDWordArray来定义,不可直接两者转换,请问有何妙法? 
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:凯凯 回复日期:2002-10-14 11:39:44
<br>内容:用strcpy从CString对象中拷贝字符串到Char*指向的缓存中。<BR><BR>第二个问题你可以用一个循环一个个的赋值数组元素。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:CDMA2000 回复日期:2002-10-14 11:41:02
<br>内容:CString类中一个LPCTSTR操作符可以将CSting转换为const char*<BR>unsigned long A[5],和CDWordArray不能直接两者转换<BR>那你可以从unsigned long A[5]的数据构造一个CDWordArray
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:徐景周 回复日期:2002-10-14 13:28:47
<br>内容:用CString中的GetBuffer可以转换为char<BR>如下:<BR>char * 转 CString<BR><BR>TCHAR * p = _T("This is a test")<BR><BR>CString 转 char<BR>CString s(_T("File.ext"));<BR>LPTSTR p = s.GetBuffer();<BR><BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:徐景周 回复日期:2002-10-14 13:30:36
<br>内容:也可用下面方法:<BR>char gray[] = "Gray";<BR>char cat[] = "Cat";<BR>char * graycat = malloc(strlen(gray) + strlen(cat) + 1);<BR>strcpy(graycat, gray);<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:烈火雨 回复日期:2002-10-14 16:59:51
<br>内容:CString -&gt; Char*<BR>eg:<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString myline="string";<BR>&nbsp;&nbsp;&nbsp;&nbsp;MessageBox((LPCTSTR)myline);<BR><BR>MessageBox本来使用char *作为参数,在CString 前加前转换LPCTSTR<BR>即可在使用时临时转换为char *.<BR><BR>如果想要永久转换为char * 好像只能用strcpy了<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?