当前位置:首页 » 编程语言 » c语言tchar

c语言tchar

发布时间: 2025-01-19 19:27:07

❶ TCHAR和char的区别

因为C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串字符串处理函数,比如:strlen和wstrlen,分别用于处理两种字符串 微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏)控制实际使用的字符集,这样就有了_T("")这样的字符串,对应的就有了_tcslen这样的函数 为了存储这样的通用字符,就有了TCHAR: 当没有定义_UNICODE宏时,TCHAR = char,_tcslen = strlen 当定义了_UNICODE宏时,TCHAR = wchar_t , _tcslen = wstrlen 当我们定义了UNICODE宏,就相当于告诉了编译器:我准备采用UNICODE版本。这个时候,TCHAR就会摇身一变,变成了wchar_t。而未定义UNICODE宏时,TCHAR摇身一变,变成了unsigned char 。这样就可以很好的切换宽窄字符集。 tchar可用于双字节字符串,使程序可以用于中日韩等国 语言文字处理、显示。使编程方法简化。

c语言中的windows.h 中包含的可调用的函数有哪些这些函数分别有什么用

c语言中的windows.h
中包含的可调用的函数有
int
CDECL
MessageBoxPrintf
(TCHAR
*
szCaption,
TCHAR
*
szFormat,
...)
//TCHAR就是宽字符,你学过C++应该知道CHAR,TCHAR就是CHAR的两倍长度,用来兼容UNICODE的,至于UNICODE和ANSI的区别,你自己去查了。CDECL这个是C语言函数的默认调用惯例,调用惯例是什么,就是操作系统如何调用这个函数,包含了如何保存参数如何返回值等等,具体可以去查。
{
TCHAR
szBuffer
[1024]
;
va_list
pArgList
;//这里提一些必须的东西,va这个开头的宏都是处理可变参数列表的,什么是可变参数列表,意思就是可以变长的参数列表,这个在WINDOWS下用得非常多,比如printf的函数,里面用类似很多%d的格式控制,也有实际输出的内容,都是作为函数的参数,具体有多少要看实际情况,所以可变参数列表在这里就起作用了。
va_list就是申明一个可变参数列表的变量
va_start
(pArgList,
szFormat)
;//va_start用于初始化可变参数列表,具体的效果就是把szFormat这个可变参数列表的第一个参数地址赋给了pArgList

_vsntprintf
(szBuffer,
sizeof
(szBuffer)
/
sizeof
(TCHAR),

szFormat,
pArgList)
;
//这个很简单,就是把szFormat和pArgList格式成字符串放在szBuffer里了

va_end
(pArgList)
;//把pArgList清0,这个只是为了程序的规范。
return
MessageBox
(NULL,
szBuffer,
szCaption,
0)
;
显示一个内容为szBuffer标题为szCaption的默认对话框,只有一个确定的那种
}
int
WINAPI
WinMain
(HINSTANCE
hInstance,
HINSTANCE
hPrevInstance,

PSTR
szCmdLine,
int
iCmdShow)
{
int
cxScreen,
cyScreen
;
cxScreen
=
GetSystemMetrics
(SM_CXSCREEN)
;
cyScreen
=
GetSystemMetrics
(SM_CYSCREEN)
;//取得屏幕的宽高
MessageBoxPrintf
(TEXT
("ScrnSize"),

TEXT
("The
screen
is
%i
pixels
wide
by
%i
pixels
high."),

cxScreen,
cyScreen)
;//调用上面的那个函数,TEXT用于转换为UNICODE
return
0
;
}

热点内容
反编译连接数据库 发布:2025-01-19 22:07:55 浏览:786
贵州省发票软件服务器地址 发布:2025-01-19 22:00:12 浏览:694
linux的单用户模式 发布:2025-01-19 21:55:29 浏览:425
android型号 发布:2025-01-19 21:48:14 浏览:337
供应外置存储阵列柜 发布:2025-01-19 21:32:41 浏览:999
柴火压缩机 发布:2025-01-19 21:20:53 浏览:624
途观5053匹配密码在哪里 发布:2025-01-19 21:19:58 浏览:352
晶锐买哪个配置 发布:2025-01-19 21:19:52 浏览:329
vpn如何访问服务器 发布:2025-01-19 21:09:31 浏览:496
如何测试电视的配置 发布:2025-01-19 21:00:48 浏览:610