Win32 API中的“A”和“W”函数有什么区别?

时间:2011-09-14 23:58:40

标签: winapi unicode ascii

调用Win32 API函数有什么区别,该函数的末尾附加A字符而不是W字符。

我知道这意味着ASCIIWIDE CHARACTER或Unicode,但输出或输入的区别是什么?

例如,如果我调用GetDefaultCommConfigA,它是否会用ASCII字符串而不是WCHAR字符串填充我的COMMCONFIG结构? (反之亦然GetDefaultCommConfigW)

换句话说,我怎么知道字符串编码是什么,ASCII或UNICODE,它必须是我调用的函数A或{{1}的版本}?正确的吗?

我找到了这个question,但我不认为它回答了我的问题。

1 个答案:

答案 0 :(得分:32)

A函数使用Ansi(非ASCII)字符串作为输入和输出,W函数使用Unicode字符串代替(NT4及更早版本的UCS-2,W2K及更高版本的UTF-16) )。 Refer to MSDN了解更多详情。