ImageVerifierCode 换一换
格式:DOC , 页数:43 ,大小:245.50KB ,
资源ID:3539894      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3539894.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++中字符串以及数据类型的转换方法汇总【帖子汇编】.doc)为本站会员(sk****8)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

C++中字符串以及数据类型的转换方法汇总【帖子汇编】.doc

1、vC+中数据类型的转换【帖子汇编】在 C中有很多的数据类型,在编程的时候,对数据类型进行转换很常遇到的,我在编程过程中频繁遇到甚至头疼,于是在网上网罗各种方法帖子。因为时间有限没法一一整理,遂将各帖汇集一处,与大家共享。希望对大家有帮助。为方便大家区分各帖。每个帖的首页都是另起一页,不会直接跟在后一个帖后面。1、如何将 CString 变量转换为 int 变量2、如何将 int 变量转换 CString 为变量CString ss=“1212.12“; int temp=atoi(ss); CString aa; aa.Format(“%d“,temp); 3、CString 转换为 Doub

2、le4、Double 转换为 CStringCString strValue(“1.234“); double dblValue; dblValue = atof(LPCTSTR)strValue); 5、char*转换成 CString若将 char*转换成 CString,除了直接赋值外,还可使用 CString:Format 进行。例如:char chArray = “This is a test“;char * p = “This is a test“;或LPSTR p = “This is a test“;或在已定义 Unicode 应的用程序中TCHAR * p = _T(“Thi

3、s is a test“);或LPTSTR p = _T(“This is a test“);CString theString = chArray;theString.Format(_T(“%s“), chArray);theString = p;6、CString 转换成 char*若将 CString 类转换成 char*(LPSTR)类型,常常使用下列三种方法:方法一,使用强制转换。例如:CString theString( “This is a test“ );LPTSTR lpsz =(LPTSTR)(LPCTSTR)theString; 方法二,使用 strcpy。例如:CStr

4、ing theString( “This is a test“ );LPTSTR lpsz = new TCHARtheString.GetLength()+1;_tcscpy(lpsz, theString); 需要说明的是,strcpy(或可移值 Unicode/MBCS 的_tcscpy)的第二个参数是 const wchar_t* (Unicode)或 const char* (ANSI),系统编译器将会自动对其进行转换。方法三,使用 CString:GetBuffer。例如:CString s(_T(“This is a test “);LPTSTR p = s.GetBuffer(

5、);/ 在这里添加使用 p 的代码if(p != NULL) *p = _T(0);s.ReleaseBuffer(); / 使用完后及时释放,以便能使用其它的 CString 成员函数 7、BSTR 转换成 char*方法一,使用 ConvertBSTRToString。例如:#include #pragma comment(lib, “comsupp.lib“)int _tmain(int argc, _TCHAR* argv)BSTR bstrText = :SysAllocString(L“Test“);char* lpszText2 = _com_util:ConvertBSTRTo

6、String(bstrText);SysFreeString(bstrText); / 用完释放delete lpszText2;return 0; 方法二,使用_bstr_t 的赋值运算符重载。例如:_bstr_t b = bstrText;char* lpszText2 = b; 8、char*转换成 BSTR方法一,使用 SysAllocString 等 API 函数。例如:BSTR bstrText = :SysAllocString(L“Test“);BSTR bstrText = :SysAllocStringLen(L“Test“,4);BSTR bstrText = :SysA

7、llocStringByteLen(“Test“,4); 方法二,使用 COleVariant 或_variant_t。例如:/COleVariant strVar(“This is a test“);_variant_t strVar(“This is a test“);BSTR bstrText = strVar.bstrVal; 方法三,使用_bstr_t,这是一种最简单的方法。例如:BSTR bstrText = _bstr_t(“This is a test“); 方法四,使用 CComBSTR。例如:BSTR bstrText = CComBSTR(“This is a test“

8、); 或CComBSTR bstr(“This is a test“);BSTR bstrText = bstr.m_str; 方法五,使用 ConvertStringToBSTR。例如:char* lpszText = “Test“;BSTR bstrText = _com_util:ConvertStringToBSTR(lpszText); 9、CString 转换成 BSTR通常是通过使用 CStringT:AllocSysString 来实现。例如:CString str(“This is a test“);BSTR bstrText = str.AllocSysString();S

9、ysFreeString(bstrText); / 用完释放 10、BSTR 转换成 CString一般可按下列方法进行:BSTR bstrText = :SysAllocString(L“Test“);CStringA str;str.Empty();str = bstrText; 或CStringA str(bstrText);11、ANSI、 Unicode 和宽字符之间的转换方法一,使用 MultiByteToWideChar 将 ANSI 字符转换成 Unicode 字符,使用 WideCharToMultiByte 将 Unicode 字符转换成 ANSI 字符。方法二,使用“_T

10、”将 ANSI 转换成“一般” 类型字符串,使用“L”将 ANSI 转换成 Unicode,而在托管 C+环境中还可使用 S 将 ANSI 字符串转换成 String*对象。例如:TCHAR tstr = _T(“this is a test“);wchar_t wszStr = L“This is a test“;String* str = S”This is a test”; 方法三,使用 ATL 7.0 的转换宏和类。ATL7.0 在原有 3.0 基础上完善和增加了许多字符串转换宏以及提供相应的类,它具有如图 3 所示的统一形式:其中,第一个 C 表示“ 类 ”,以便于 ATL 3.0

11、宏相区别,第二个 C 表示常量,2 表示“to”,EX 表示要开辟一定大小的缓冲。SourceType 和 DestinationType 可以是 A、T、W 和 OLE,其含义分别是 ANSI、Unicode 、“ 一般”类型和 OLE 字符串。例如,CA2CT 就是将 ANSI 转换成一般类型的字符串常量。下面是一些示例代码:LPTSTR tstr= CA2TEX(“this is a test“);LPCTSTR tcstr= CA2CT(“this is a test“);wchar_t wszStr = L“This is a test“;char* chstr = CW2A(wsz

12、Str); Visual C+ 如何:在各种字符串类型之间进行转换本主题演示如何将各种 C+ 字符串类型转换为其他字符串。可以转换的字符串类型包括 char *、wchar_t*、_bstr_t、 CComBSTR、CString、basic_string 和 System.String。在所有情况下,在将字符串转换为新类型时,都会创建字符串的副本。对新字符串进行的任何更改都不会影响原始字符串,反之亦然。从 char * 转换示例说明此示例演示如何从 char * 转换为上面列出的其他字符串类型。/ convert_from_char.cpp/ compile with /clr /link

13、comsuppw.lib#include #include #include #include “atlbase.h“#include “atlstr.h“#include “comutil.h“using namespace std;using namespace System;int main()char *orig = “Hello, World!“;cout #include #include #include “atlbase.h“#include “atlstr.h“#include “comutil.h“using namespace std;using namespace Sy

14、stem;int main()wchar_t *orig = L“Hello, World!“;wcout #include #include #include “atlbase.h“#include “atlstr.h“#include “comutil.h“using namespace std;using namespace System;int main()_bstr_t orig(“Hello, World!“);wcout orig “ (_bstr_t)“ endl;/ Convert to a char*const size_t newsize = 100;char nstri

15、ngnewsize;strcpy_s(nstring, (char *)orig);strcat_s(nstring, “ (char *)“);cout nstring endl;/ Convert to a wchar_t*wchar_t wcstringnewsize;wcscpy_s(wcstring, (wchar_t *)orig);wcscat_s(wcstring, L“ (wchar_t *)“);wcout wcstring endl;/ Convert to a CComBSTRCComBSTR ccombstr(char *)orig);if (ccombstr.App

16、end(L“ (CComBSTR)“) = S_OK)CW2A printstr(ccombstr);cout printstr endl;/ Convert to a CStringCString cstring(char *)orig);cstring += “ (CString)“;cout cstring endl;/ Convert to a basic_stringstring basicstring(char *)orig);basicstring += “ (basic_string)“;cout basicstring endl;/ Convert to a System:S

17、tringString systemstring = gcnew String(char *)orig);systemstring += “ (System:String)“;Console:WriteLine(“0“, systemstring);delete systemstring;输出Hello, World! (_bstr_t)Hello, World! (char *)Hello, World! (wchar_t *)Hello, World! (CComBSTR)Hello, World! (CString)Hello, World! (basic_string)Hello, World! (System:String)从 CComBSTR 转换示例说明此示例演示如何从 CComBSTR 转换为上面列出的其他字符串类型。/ convert_from_ccombstr.cpp/ compile with /clr /link comsuppw.lib

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。