学习C:奇怪的代码,它做了什么?

时间:2010-08-10 19:02:26

标签: c macros

我正在探索wxWidgets并同时学习C / C ++。通常wxWidgets函数需要wxString而不是string,因此wxWidgets提供宏wxT( yourString )来创建wxString s 。我的问题涉及这个宏观的扩展。如果您键入wxT("banana"),则展开的宏会显示L"banana"。这在C中有什么意义? L是一个用参数“banana”调用的函数吗?

3 个答案:

答案 0 :(得分:5)

  • "banana"是使用1字节ASCII字符写的字。

  • L"banana"是使用多字节(通用2 =字节UNICODE)字符写的字。

答案 1 :(得分:2)

L是字符串上的标志,让它知道它是一个宽(unicode)字符串。

答案 2 :(得分:2)

L告诉你的编译器它是一个unicode字符串而不是“普通”字符串。