我一直在使用 C++ 并使用 clang++ 进行编译。我想包含我正在编写的 X11 程序的<xcb/xkb.h>标头。
不幸的是,这个标头用于explicit某些字段名称(例如第 727 行),而这是 C++ 中的关键字。
有办法解决这个问题吗?
xcb/xkb.h:
// ...
#ifdef __cplusplus
extern "C" {
#endif
// ...
typedef struct xcb_xkb_set_explicit_t {
xcb_keycode_t keycode;
uint8_t explicit;
} xcb_xkb_set_explicit_t;
// ...
#ifdef __cplusplus
}
#endif
// ...
Run Code Online (Sandbox Code Playgroud) 我正在尝试检测包含三个部分的模式:
我想保留#2 和#3。例如,我想将“我确定他没有”更改为“我确定他没有”
我在表达 #3 时遇到困难,因为[ $]似乎只匹配空格,而不匹配行尾。这是我尝试过的:
$ echo "i m sure he doesn t" | sed 's/ \([mt]\)\([ $]\)/\1\2/g'
im sure he doesn t
Run Code Online (Sandbox Code Playgroud)
在上面的表达式中我应该如何表达“空格或行尾”?谢谢!