各种类型转换LPCTSTR方法

使用UNICODE字符集后,很多函数的LPCTSTR类型参数需要转换,在此做个备份,不用每次都百度。_T()=TEXT().

1.首先CString类很强大,可以自动转换LPCTSTR,所以可以直接用上,后面很多方法也是转换成CString,比如:

CString str("我爱你");

MessageBox(str);

2.字符数组char c[],需要手动转换,给c赋值后,用CString(c)转换使用。比如:

char c[7]="我爱你";

c[6]=0;

MessageBox(CString(c));

3.数字比如int i,long l之类的,需要手动转换,给i和l赋值后,用CString类的Format()方法转换。比如:

int i=100;

CString str;

str.Format(_T("%d"), i);

MessageBox(str);

4.TCHAR tc[]字符数组可以直接用上,但是给tc赋值时,要使用_T()的赋值方法,普通的赋值会是乱码,比如:

TCHAR tc[7] = _T("我爱你");

MessageBox(tc);

5.直接用双引号包含的字符串,需要用_T()手动转换,比如:

MessageBox(_T("我爱你"));

时间: 2024-07-30 17:58:24

各种类型转换LPCTSTR方法的相关文章

QVariant与自定义数据类型转换的方法

在使用VC.Delphi编写用户界面程序的时候,经常会把对象与控件的data域进行绑定,便于程序运行中读写提高效率.然而在Qt编程中怎么实现这个功能呢?比如将一个用户自定义的结构体与QComboBox控件的data绑定? Qt的联机帮助做的实在是差强人意,示例代码太少了.调试了半天,看到这篇文章给了我提示.主要步骤如下: 1.将自定义数据类型使用Q_DECLARE_METATYPE宏进行声明,便于编译器识别. 2.在插入对象的时候,声明QVariant对象,使用其setValue方法添加自定义对

.Net基础篇_学习笔记_第六天_类型转换和方法(函数)简介

类型转换:Convert.ToInt32();  int.Parse();  int.TryParse(); Convert.ToInt32(); 的本质就是在使用 int.Parse(); int.TryParse();尝试着将一个字符串转换成int类型.作为一种方法.方法:需要参数和输入返回值.  返回值失败为0.

自定义类型转换器之TypeConverter

C#提供了很多类型转换的方法如ConvertToInt.int.Parse.int.tryParse等等,这些方法都能将一个C#的基本数据类型转换成另一个C#基本数据类型.那么.既然如此,C#肯定会提供某种机制来让我们编写自定义的类型转换器. so.C#提供了一个类型-TypeConverter来帮助我们完成类型转换的功能,TypeConverter类就是将一种类型(object,当然可以是任意类型)转换成一种类型(一般为string,当然也可以是其他的类型).或者将另一种类型转换回来. 1.所

java对象转换String类型的三种方法

在很多情况下我们都需要将一个对象转换为String类型.一般来说有三种方法可以实现:Object.toString().(String)Object.String.valueOf(Object).下面对这三种方法一一分析 一.采用Object.toString()toString方法是java.lang.Object对象的一个public方法.在java中任何对象都会继承Object对象,所以一般来说任何对象都可以调用toString这个方法.这是采用该种方法时,常派生类会覆盖Object里的t

【开源】OSharp框架解说系列(3):扩展方法

〇.前言 扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用. 对于用 C# 和 Visual Basic 编写的客户端代码,调用扩展方法与调用在类型中实际定义的方法之间没有明显的差异. 最常见的扩展方法是 LINQ 标准查询运算符,它将查询功能添加到现有的 System.Collections.IEnumerable 和 System.Collections.Generic.

一个类型转换而引起的三级事件的一些思考

前段时间出了个三级事件,查下来竟然是因为一个溢出造成的死循环,在公司出事件还是挺冒险的一件事,除了大boss要扣钱,还要给 高层一个合理的解释,如果在小公司干活,可能就算网站宕了一天估计也没事,如果在大点的公司每秒都是银子的流失,也许造成的损失就算 我们白干一二年也抵不了,所以责任心和代码意识真的很重要. 先来看看问题代码,在这里我做了一点点的修改,代码的意思很简单,就是想获取参数num中二进制1的个数. 1 static void Run(long num) 2 { 3 int i = 1;

.NET之类型转换

说起类型转换大家很容易的就会联想到将int类型转换成float类型或者是将double类型转转成int类型之类的转换.当然这可能是大多数人最先接触到的转换方式,也是最简单的转换方式.所谓转换就是从现有类型的值创建一个新的值,对于大多数面向对象的语言而言,因为多出了"类"这个概念,所以类型转换并不仅仅是基础类型(int.float.string等)之间的转换..NET作为一个承载平台而言自然是需要提供适应多种情况的类型转换方式的,因此本文就结合自己的理解对.NET下的类型转换作一个简单的

【Spring学习笔记-MVC-8】SpringMVC之类型转换

作者:ssslinppp       1. 摘要 这里仅仅是一个简单的类型转换示例,重点在于说明SpringMVC类型转换的方法.配置及流程: 基本功能说明: 1. 前台传递的数据格式形如:"zhangSan:888": http://localhost:8080/SpringMVCTest/test/conversionTest.action?person=zhangsan:666 2. 将"zhangSan:888"字符串转换为Person对象: 具体过程: 定

自动类型转换之运算符重载

第二种自动类型转换的方法是运算符重载,其是形式是operator 目的类型();   这个函数通过在关键字operator后跟随想要转换到的类型的方法,将当前类型转换为希望的类型.这种形式的运算符重载是独特的,因为没有指定返回值类型,其返回值类型就是正在重载运算符的名字. 1 #include<iostream> 2 using namespace std; 3 4 class Three{ 5 int i; 6 public: 7 Three(int ii=0) :i(ii){ 8 9 }