关于把CString转化成LPCTSTR的问题 作者:jakiesun 发表日期:2001-9-5 20:08:48
我记的我以前写过这样一段代码
void function()
{
CString str,str1,str2;
function((char*)(LPCTSTR)str1);
str=str1;
...//调试道此发现str2的值随着str的改变而改变,请问能解释一下为什么,如有回答,请通知
wangshaohong@sohu.com,tx先
}
添加lib支持 作者:磨刀霍霍 发表日期:2001-9-10 11:32:12
如果不添加会产生错误,在setting中加入comsupp.lib或者直接#pragma comment( lib, "comsupp.lib" )
微软认为缺省的设置call convention如果不设置成__cdecl也会出现同样的错误。
1。int 转成cstring ??
CString 的成员函数Format()
int a = 2131;
CString str;
str.Format("%d",a);
int i=2001;
char str[10];
_itoa(i,str,10);
CString szString=str;
他们两个的都可以!!
那如何把double转成cstring
int i = 2131;
char *c=new char[20];
CString str;
sprintf(c,'%d',i);
str=*c;
用 _gcvt 下面是 msdn 的例子
Example
/* _GCVT.C: This program converts -3.1415e5
* to its string representation.
*/
#include <stdlib.h>
#include <stdio.h>
void main( void )
{
char buffer[50];
double source = -3.1415e5;
_gcvt( source, 7, buffer );
printf( "source: %f buffer: '%s'\n", source, buffer );
_gcvt( source, 7, buffer );
printf( "source: %e buffer: '%s'\n", source, buffer );
}
Output
source: -314150.000000 buffer: '-314150.'
source: -3.141500e+005 buffer: '-314150.'
int a = -3.1415e5;
CString str;
str.Format("%f",a);
CString 的成员函数Format()
int a = 2131;
CString str;
str.Format("%d",a);
2。基类对象怎么能转换成派生类对象?
int CDaoListView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
lpCreateStruct->style |= LVS_REPORT |LVS_EDITLABELS;
if (CListView::OnCreate(lpCreateStruct) == -1)
return -1;
//////////// 创建ImageList;
CDaoViewApp * pApp = (CDaoViewApp *) AfxGetApp();
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-27731-5.html
5c都不卡
中国有这么勇敢就好
后面的报道一定是非常失望
这样的“优质资源”当然他自己享受了