字符串前面加L表示该字符串是Unicode字符串
_T是一个宏,如果项目使用了Unicode字符集(定义了UNICODE宏),则自动在字符串前面加上L,否则字符串不变。
因此,Visual C++里边定义字符串的时候,用_T来保证兼容性。VC支持ascii和unicode两种字符类型,用_T可以保证从ascii编码类型转换到unicode编码类型的时候,程序不需要修改。

1. 在字符串前加一个L的作用

L"我的字符串" 表示将ANSI字符串转换成unicode的字符串,就是每个字符占用两个字节。

strlen("asd") = 3;
strlen(L"asd") = 6;

2. 在字符串前加一个_T的作用

_T宏可以把一个引号引起来的字符串,根据你的环境设置,使得编译器会根据编译目标环境选择合适的(Unicode还是ANSI)字符处理方式

如果你定义了UNICODE,那么_T宏会把字符串前面加一个L。这时 _T(“ABCD”) 相当于 L"ABCD" ,这是宽字符串。

如果没有定义,那么_T宏不会在字符串前面加那个L,_T(“ABCD”) 就等价于 “ABCD”

C++中的L和_T()相关推荐

  1. 关于char, wchar_t, TCHAR, _T(),L,宏 _T、TEXT,_TEXT

    char :单字节变量类型,最多表示256个字符, wchar_t :宽字节变量类型,用于表示Unicode字符, 它实际定义在<string.h>里:typedef unsigned s ...

  2. c++字符前面的L和_T

    字符串前面加L表示该字符串是Unicode字符串. _T是一个宏,如果项目使用了Unicode字符集(定义了UNICODE宏),则自动在字符串前面加上L,否则字符串不变.因此,Visual C++里边 ...

  3. linux ps-l命令详解,Linux系统中ps -l命令显示的英文含义

    Linux系统中ps -l命令显示的英文含义 UID:启动这些进程的用户. PID:进程的进程ID. PPID:父进程的进程号(如果该进程是由另一个进程启动的). C:进程生命周期中的CPU利用率. ...

  4. Linux中ls -l命令展示信息详解

    Linux中ls -l命令展示信息详解 在Linux系统中,ls -l命令是用以列表的形式来查看当前目录下的文件或目录,下面就让我们一起来看看展示的信息是什么意思吧 以CentsOS7为例子 [roo ...

  5. Leaflet中的L.geoJSON一个坑

    最近在使用 SuperMap iClient 9D for Leaflet 中的 L.supermap.queryService(url).queryByGeometry()接口 来定位某个建筑图斑时 ...

  6. 微软输入法的m图标怎么设置_如何在Microsoft Word中获取“ L”形的格式设置图标?...

    微软输入法的m图标怎么设置 Each of us has a preferred layout and setup when we are working with Microsoft Word, b ...

  7. 数据结构顺序表中Sqlist *L,L,Sqlist *L

    //定义顺序表L的结构体 2 typedef struct 3 { 4 Elemtype data[MaxSize]: 5 int length; 6 }SqList; 7 8 //建立顺序表 9 v ...

  8. 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。

    问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个. 输入格式 第一行包含一个数n,表示序列长度. 第二行包含n个正整数,表示给定的序列. 第三个包含一个正整数m,表示询问个数 ...

  9. Makefile中 -I -L -l区别

    转载自:http://blog.csdn.net/davion_zhang/article/details/41805641 我们用gcc编译程序时,可能会用到"-I"(大写i), ...

  10. Linux中ls -l(ll)返回结果中的文件访问权限-rw-r--rw-

    linux文件访问权限(像rw-r--rw-是什么意思) Linux的文件访问权限分为 读.写.执行三种 r:可读(4) w:可写(2)对目录来说则可新建文件 x:可执行(1)对目录来说则可进入该目录 ...

最新文章

  1. vue2.0无限滚动加载数据插件
  2. mysql 自增模式 auto,mysql(AUTO_INCREMENT)自增ID的起始值修改与设置
  3. 什么时候考虑使用神经网络
  4. Mobaxterm常用的指令(基于linux)
  5. freerdp linux下连接windows远程终端工具
  6. NodeJS学习第一季-路由规则
  7. url-pattern主要有四种匹配方式
  8. 改写反话技巧_2021考研唐迟阅读技巧总结
  9. SCM供应链管理系统解决方案:助力企业采购流程高效运行,全面降低供应链风险
  10. WPF入门教程系列一——基础
  11. Arduino入门教程(二) Unity动感单车
  12. 高通平台,MSM8937/MSM8953 RF配置流程
  13. mybatis分页配置
  14. 爱是永恒---记学友3.31广州演唱会
  15. 计算机考试中粗实线,国开电大 计算机绘图(终结性考试)大作业答案
  16. oracle部分符号含义
  17. 计算机硬盘启动改u为盘启动不了,电脑店超级U盘启动盘制作工具V7.0(王者归来)...
  18. 【奥卡姆剃刀】一条短信骗走所有财产的分析
  19. jvm崩溃并输出 hs_err_pidxxxx.log文件异常原因
  20. java中北大学ppt总结+课后习题第四章(小宇特详解)

热门文章

  1. php+mysql+apache的安装方法
  2. Java 零注解文档生成工具—smart-doc,看完有替换swagger的冲动
  3. 决策树算法的应用python实现_决策树ID3和C4.5算法Python实现源码
  4. apk 反编译_安卓apk反编译、重新打包、签名全过程
  5. nginx.conf 配置完整示例
  6. java中ping多个ip_在Java中ping多个服务器
  7. ProGuard:类混淆,类的指定函数保留
  8. 代码管理学:正确理解工作,并不是你想的那样容易
  9. 编程基本功:写一个JAVA版的对象回收利用机制
  10. configure: The C compiler (located as /usr/bin/gcc) does not seem to be the required gcc compiler.