c++语言中_T含义

简介:
1._T("Hello")是一个宏,作用是让程序支持Unicode编码。
2.windows使用两种字符集ANSI和UNICODE,前者使用的单字节格式,后者使用双字节格式。
3.简单一点讲:
_T("hello world")表示:
在ansi的环境下,它是ansi的;
在unicode下,那么它将自动解释为双字节字符串,既unicode编码。
好处:不管是ansi环境,还是unicode环境,都适用。
4. 相当于:
#ifdef _UNICODE
#define _T("ABC") L"ABC"  //每个字符16位
#else
#define _T("ABC") "ABC"   //每个字符8位
#endif

5.举例说明:
(1)#define Conn(x,y) x##y     //表示:x连接y;

int n = Conn(123,456);      // 结果就是n=123456;
char* str = Conn("asdf", "adf")    //结果就是 str = "asdfadf";

(2)#define ToChar(x) #@x   //表示:给x加上'',结果返回是一个const char

char a = ToChar(1);   //结果就是a='1';
越界试验char a = ToChar(123);     //结果是a='3';
如果你的参数超过四个字符,编译器就报错!error C2015: too many characters in constant 
   :P

(3)#define ToString(x) #x      //表示:给x加上""

char* str = ToString(123132);       //就成了str="123132";


本文转自 韬光星夜 51CTO博客,原文链接:http://blog.51cto.com/xfqxj/498197,如需转载请自行联系原作者
相关文章
|
3天前
|
编译器 C++
C++语言预处理器学习应用案例
【4月更文挑战第8天】C++预处理器包括条件编译、宏定义和文件包含等功能。例如,条件编译用于根据平台选择不同代码实现,宏定义可简化常量和变量名,文件包含则用于整合多个源文件。示例中展示了如何使用`#ifdef`等指令进行条件编译,当`DEBUG`宏定义时,`PRINT_LOG`会打印调试信息,否则不执行。
17 1
|
3天前
|
Linux 程序员 图形学
C++语言在现代软件开发中的应用与实践
C++语言在现代软件开发中的应用与实践
20 2
|
3天前
|
存储 程序员 C语言
深入理解C++:从语言特性到实践应用
深入理解C++:从语言特性到实践应用
24 3
|
3天前
|
存储 算法 安全
C++语言深度探索:从基础到实践
C++语言深度探索:从基础到实践
14 2
|
3天前
|
机器学习/深度学习 人工智能 大数据
开发语言漫谈-C++
C++最初的名字为“带类的C”
|
3天前
|
缓存 编译器 API
NumPy与其他语言(如C/C++)的接口实践
【4月更文挑战第17天】本文介绍了NumPy与C/C++的接口实践,包括Python与C/C++交互基础、NumPy的C API和Cython的使用。通过案例展示了如何将C++函数与NumPy数组结合,强调了内存管理、类型匹配、错误处理和性能优化的最佳实践。掌握这些技能对于跨语言交互和集成至关重要。
|
3天前
|
存储 C++
C++语言学习指针和引用应用案例
C++中的指针和引用用于高效操作内存。示例展示指针和引用的基本用法:指针`*p`存储变量`a`的地址,引用`&x`在函数调用中实现值交换而无需复制。此外,引用`update(&x)`可直接修改原变量,指针`p`在数组操作中用于遍历和访问不同部分。
13 2
|
3天前
|
C++
C++语言学习数组和字符串应用案例
【4月更文挑战第8天】该文展示了C++中数组和字符串的应用案例。数组示例定义了一个整数数组并访问、修改其元素,计算了元素之和。字符串示例中,定义了一个字符串并遍历、修改字符,进行了字符串拼接、查找子字符串及替换操作。
12 3
|
3天前
|
C++
C++语言学习文件操作应用案例
C++文件操作示例:创建`ofstream`对象写入"Hello, World!"到`output.txt`,刷新缓冲区,然后使用`ifstream`读取并打印文件内容。如果文件打开失败,程序将显示错误信息并返回1。
14 3
|
3天前
|
C++
C++语言异常处理学习应用案例
C++异常处理保证程序在运行时遇到错误(如除数为0)时不崩溃。以下是一个示例:程序接收用户输入的两个整数并进行除法运算。若除数为0,则抛出`std::runtime_error`异常。`try-catch`结构用来捕获并处理异常,当出现异常时,输出错误信息,使程序能继续执行。
19 4