eye*_*ash 3 c c++ include c-preprocessor
假设我有一个名为a"b.hor的头文件a>b.h,如何转义包含指令中的"or字符?>
// this does not work
#include "a\"b.h"
Run Code Online (Sandbox Code Playgroud)
>使用指令时,不允许将字符作为文件名的一部分#include <filename>(并且分别"不允许将字符作为 中的文件名的一部分#include "filename")。没有标准方法可以转义序列中的任何字符,任何此类功能都将是编译器扩展。cpp 参考链接。
对于 filename 的具体情况a>b.h,您可以将其更改为#include "a>b.h"并且它应该可以工作。
文件名a"b.h很不幸 - 即使#include <a"b.h>它的实现定义了如何"处理字符(或者如果完全支持的话)。
除了 之外",在指令的文件名部分中使用字符'、\或//也是实现定义的,可能不受支持。/*#include