#include <string>
#include <tchar.h> // _TCHAR
#include <stdlib.h>
#include <iostream>
#include <atlstr.h> //Cstring
#include <atlconv.h> //W2A宏
#include <xstring> using namespace std; int _tmain(int argc,_TCHAR* argv[])
{
/**********string->cstring ***********/
//setlocale(LC_ALL, "Chinese-simplified");
//wcout.imbue(locale("chs"));
//std::string str = "123456!";
//CString cstr = _T("");
//方式一
//cstr.Format(_T("%s"),str.c_str());
//方式二
//for(int i = 0; i < (int)str.length(); ++i)
//{
// cstr += str[i];
//}
//方式三
//cstr = str.c_str();
//wcout << cstr << endl; /************ cstring->string **************/
//方式一
//CString cstr1 = _T("this is cstring!");
//string str1 = "";
//str1 = cstr1.GetBuffer();
//cstr1.ReleaseBuffer();
//方式二
//for (int i = 0; i < cstr1.GetLength(); ++i)
//{
// str1 += cstr1[i];
//}
//方式三 W2A宏
//str1 = W2A(cstr1);//用法还没弄懂,需要加入一些文件头 或宏定义 ??? //cout << str1 << endl; /************* string-> char*************/
//string str2 = "this is string2!";
//方式一
//char *p = (LPSTR)str2.c_str();
//方式二
//char t[200];
//memset(t, 0,200);
//strcpy(t,str2.c_str());
//方式三 出现warning C4305: “=”: 从“int”到“char”截断 ???
//char *pc = new char[str2.length() + 1];
//pc[str2.length()] = '/0';
//for (int i = 0; i < str2.length(); ++i)
//{
// pc[i] = str2[i];
//}
//pc[str2.length()] = '/0';
//cout << pc << endl; /****************** char*->string ******************/
//char *pch = "this a char!";
//方式一 只能用作初始化
//string str3(pch);
//方式二 assign()赋值
//string str3;
//str3.assign(pch);
//cout << str3 << endl; //string是ansi编码字符char
//TCHAR是unicode编码字符wchar_t
/*********** string -> TCHAR* *********/
//使用MultiByteToWideChar()函数 /*********** TCHAR* ->string *********/
//使用 WideCharToMultiByte()函数 /**************** string 和char*转int ******************/
//int atoi(const char *nptr);
//long atol(const char *nptr);
//long long atoll(const char *nptr);
//long long atoq(const char *nptr); /*******************int转char*和string************************/
//使用itoa();itoa(i,str,10); /******************* wstring转Csting *****************/
//wstring wstr = L"this a wstring!你好啊";
//CString cstr4 = _T("");
//cstr4 = wstr.c_str();
//cout << cstr4 << endl; /******************* Csting ->wstring *****************/
//CString cstr5 = _T("this a cstring5!");
//wstring wstr5 = L"";
//wstr5 = cstr5.AllocSysString();
//wcout << wstr5 << endl; /********* Cstring转char* *************/
//CString cstr6 = _T("this cstring6!");
//char* pch6 = "";
//pch6 = cstr6.GetBuffer();
//cout << pch6 << endl;
//cstr6.ReleaseBuffer(); /************ char *转Cstring **********/
//char pch[20] = "this a char* !";
//CString str7 = _T("");
//str7.Format("%s",pch);
//cout << str7 << endl; /*********** TCHAR -> char ************/
//TCHAR *pTch = _T("this a TCHAR");
//int nLength = 2 * strlen(pTch);
//char* pCh = new char[nLength + 1];
//memset(pCh,0, nLength + 1);
//strcpy(pCh, pTch);
//cout << pCh << endl; /*********** char转tchar ************/ system("pause");
return ;
}

cstring、string、wstring、int、char*、tchar、 int、dword等相互转换代码输出测试的更多相关文章

  1. Linux基本数据类型大小——int,char,long int,long long int

    转自:http://paddy-w.iteye.com/blog/1403217 在Linux操作系统下使用GCC进行编程,目前一般的处理器为32位字宽,下面是/usr/include/limit.h ...

  2. CString string char* char 之间的字符转换(多种方法)

    在写程序的时候,我们经常遇到各种各样的类型转换,比如 char* CString string 之间的互相转换.首先解释下三者的含义. CString 是一种很有用的数据类型.它们很大程度上简化了MF ...

  3. MFC中cstring,string和char[]的相互转化

    int 转 CString:CString.Format("%d",int);...............................string 转 CString CSt ...

  4. 计算机基础--Java中int char byte的关系

    计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用 ...

  5. unicode下各种类型转换,CString,string,char*,int,char[]

    把最近用到的各种unicode下类型转换总结了一下,今后遇到其他的再补充: 1.string转CString string a=”abc”; CString str=CString(a.c_str() ...

  6. VC++中的CString、char、int类型转换

    1.如何将CString类型的变量赋给char*类型的变量   方法一:GetBuffer函数  使用CString::GetBuffer函数.  char *p;  CString str=&quo ...

  7. QString, string, int, char* 之间相互转换

    这三种数据类型在实际运用中经常需要互相转换,那么这里小结下它们之间的转换方法: - Qstring & string Qt中封装的类十分强大,其成员函数数量之多比STD有过之而无不及,许多程序 ...

  8. [转] java中int,char,string三种类型的相互转换

    原文地址:http://blog.csdn.net/lisa0220/article/details/6649707 如何将字串 String 转换成整数 int? int i = Integer.v ...

  9. java中int,char,string三种类型的相互转换

    如何将字串 String 转换成整数 int? int i = Integer.valueOf(my_str).intValue(); int i=Integer.parseInt(str); 如何将 ...

随机推荐

  1. Linux maven 下 jar包下载不下来的解决方法

    在项目中遇到一个问题,使用推送的中间件,结果使用maven下载不下来,当时就直接手动下载后,copy到本地仓库了, 结果发布的时候遇到问题了. 因为发布是直接在测试服务器上,将提交的svn代码进行打包 ...

  2. Disable Maven Nature和disable workspace resolution

    1.Disable Maven Nature myeclipse更新maven的时候,手抖了一下,点上了Disable Maven Nature,然后工程右键菜单中的Maven栏就不见了! 其实这是把 ...

  3. Idea创建sbt项目

    这篇文章开始演示如何使用sbt新建项目. 1. 新建,选择Scala,SBT 填写项目名称,Scala版本号等信息. 单击完成后,后台会一直处于下载依赖文件的状态,等吧.. 最终后台运行完成后的完整目 ...

  4. EcmaScript对象克隆之谜

    先谈谈深拷贝 如何在js中获得一个克隆对象,可以说是喜闻乐见的话题了.相信大家都了解引用类型与基本类型,也都知道有种叫做深拷贝的东西,传说深拷贝可以获得一个克隆对象!那么像我这样的萌新自然就去学习了一 ...

  5. tp-02 四种url访问的方式

    :http://localhost/index.php?m=模块&c=控制器&a=操作方法 [get模式] :http://localhost/index.php/模块[模块文件夹]/ ...

  6. CSS 块级元素、内联元素概念

    p.h1.或div等元素常常称为块级元素,这些元素显示为一块内容:Strong.span等元素称为行内元素,它们的内容显示在行中,即“行内框”.(可以使用display=block将行内元素转换成块元 ...

  7. C++ 判断

    C++ 判断判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). #include <iostream> /* ru ...

  8. (转)loff_t *ppos是什么东东

    ssize_t generic_file_read(struct file * filp, char * buf, size_t count, loff_t *ppos) 这是一个文件读函数 我们很容 ...

  9. 最简单的基于FFMPEG+SDL的音频播放器 ver2 (採用SDL2.0)

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

  10. HDU 1556 Color the ball 树状数组 题解

    Problem Description N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a <= b),lele便为骑上他的"小飞鸽"牌电动 ...