随笔分类 - 【1】VC数据类型
摘要:归纳:最前面的LP,表示这是个指针。最后面的STR,表示指向的是字符串。中间的C和T。C表示 const //不可修改。T表示 _TEXT() //兼容UNICODE和MBCS。==========================UNICODE:它是用两个字节表示一个字符的方法。比如字符'A'在ASCII下面是一个字符,可'A'在UNICODE下面是两个字符,高字符用0填充,而且汉字'程'在ASC...
阅读全文
摘要:const char* c;c = "abcdef";CString s;int len = strlen(c);TCHAR* c1 = (TCHAR*)malloc(sizeof(TCHAR)*len);MultiByteToWideChar( CP_ACP , 0 , c , len+1 , c1 , len+1);s.Format(L"%s",c1);--------------
阅读全文
摘要:TCHAR szBuffer[40];int iLength = wsprintf(szBuffer, TEXT("%i and %i is %i"),iA,iB,iA+iB);TextOut(hdc,100,100,szBuffer,iLenght);------------
阅读全文
摘要:C/C++中的字符串问题在网上的讲解一向非常含糊,存在各个层次的库混用、滥用的情况,尤其是宽字符与窄字符等问题很难找到有效的资料,本篇随笔分享一下我长期收集到的一些比较准确的资料以及据此得到的个人理解.C语言中的字符串C语言中提供了两种字符类型char和wchar_t,C语言使用字符数组来表示字符串,同时支持两种直接量写法:"abcd"和 L"abcd" 来表示字符串常量文字量,C语言允许用字符串...
阅读全文
摘要:对消息的处理中我们经常需要将WPARAM或LPARAM等32位数据(DWORD)分解成两个16位数据(WORD),例如: LPARAM lParam; WORD loValue = LOWORD(lParam);///取低16位 WORD hiValue = HIWORD(lParam);///取高16位 对于16位的数据(WORD)我们可以用同样的方法分解成高低两个8位数据(BYTE),例如: ...
阅读全文
摘要:_variant_t转化成char* ch;ch = (char*)(_bstr_t)vt;=================================VARIANT的结构可以参考头文件VC98\Include\OAIDL.H中关于结构体tagVARIANT的定义。 对于VARIANT变量的赋值:首先给vt成员赋值,指明数据类型,再对联合结构中相同数据类型的变量赋值,举个例子: VARIAN...
阅读全文
摘要://CComBSTR、_bstr_t是对BSTR的封装,BSTR是指向字符串的32位指针。char* ch;BSTR b=_com_util::ConvertStringToBSTR(ch);///使用前需要加上头文件comutil.h char *p=_com_util::ConvertBSTRToString(b);=======_bstr_t转化为char* ch;ch = (char*)b...
阅读全文
摘要:string str = "11";string转化为CString cstr;cstr.format("%s", str.c_str());string转化为char* ch;ch = string.c_str(); /*string.c_str()只能转换成const char *, 要转成char *这样写: string mngName; char t[200]; memset(t,0,2...
阅读全文
摘要:int i = 1;int转化为CString cstr;str.Format("%d",i);int转化为string str;int转化为float f;f = atof((char*)(LPCTSTR)cstr);int转化为char c;int转化为char* ch;int转化为byte by;BYTE by[4]; memcpy( by, &i, 4 );
阅读全文
摘要:char* ch="give string a value";char*转化成CString cstr;cstr=ch;cstr.Format("%s",ch);char*转化成string str;string str(ch);str.assign(ch);char*转化为Int i;itoa(i,ch,2); //按二进制方式转换
阅读全文
摘要:CString cstr = L"1";CString转换为int i ;i = _ttoi(cstr);i = atoi((const char *)cstr); i = atoi((char *)cstr);//atoi、_atoi64或atolCString转换为float f;sscanf(str,"%f",&v);//float v;double dVal = atof(LP...
阅读全文
浙公网安备 33010602011771号