C 宏应该在一处扩展为 char*,在另一处扩展为 wchar* 并带有 L 字符

问题描述

我正在寻求有关编写 C 宏的帮助,该宏在一处扩展为 char* 宏,在另一处扩展为 wchar_t* 宏。

例如:

#define MACRO_STRING "Macro String"

到带有函数调用的原子部分:

{
    function1(L"Macro String");
    function2("Macro String");
}

function1 总是接受宽字符 wchar_t *,而 function2 总是接受 char *

在我的代码中的大多数地方,我立即调用 function1,然后是 function2。在我的代码中,字符串“宏字符串”是一个常量。但是一个函数将输入作为 wchar* 而另一个将输入作为 char*

需要帮助在两个函数中以不同的方式扩展宏

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)