gpt4 book ai didi

c++ - #define argument stringized but to a wide string L"而不是 "

转载 作者:行者123 更新时间:2023-11-30 02:49:54 24 4
gpt4 key购买 nike

我需要将一个 #define 参数字符串化为一个宽字符串。

所以当

#define c(x) x,#x

用作:

{c(maria),0,false},

给出:

{maria,"maria",0,false} // maria is a member of an enum.

我不知道如何做同样的事情,但创建了一个宽字符串。

我的意思是不是让 "maria"L"maria"

最佳答案

你可以这样做:

#define c(x) x,L###x

## 连接对于将 L 和引用的字符串组合成一个预处理标记是必要的(因为 L 是一个 string-literal 标记)。

#define c(x) x,L###x
c(Hello)

将其通过预处理器(使用 clang++ -E test.cpp)给出:

Hello,L"Hello"

关于c++ - #define argument stringized but to a wide string L"而不是 ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20869339/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com