Doxygen在C中转义嵌套注释

时间:2014-07-27 06:23:59

标签: c doxygen

我在C注释块中的doxygen中编写文档字符串,我想要包含一个包含/* text */的片段

我知道我可以包含一个文件,但这只是8个字符左右。它需要是/* text */,而不是// text(因为我记录了C源代码解析器的行为)。

有没有办法逃避角色,所以这样的事情是可能的,而不会导致Doxygen或编译器出现问题?

/**
 * This is a doxy comment.
 *
 * This parser supports C style formatted comments: ``/* text */``
 */

意识到我可以在这里使用C ++注释作为主要的doxygen注释块。但仍然很好奇,如果没有这样做是可能的(这意味着仅为这一个片段更改一个大的评论块)。

3 个答案:

答案 0 :(得分:4)

在1.8.7版本中。存在‍(参见第24章文档的HTML命令)。你尝试过(这是一个小技巧): This parser C supports style formatted comments: /‍* text *‍/

答案 1 :(得分:1)

无法嵌套评论......

  

C99 6.9.4评论

     

1除了字符常量,字符串文字或注释外,字符/ *   介绍评论。检查此类评论的内容仅用于识别   多字节字符并找到终止它的字符*。 70)

     

70)因此,/ * ... * / comments不会嵌套。

你必须做这样的事情:

/**
 * This is a doxy comment.
 *
 * This parser supports C style formatted comments: /* text *//*
 */

注意区别:

/* text *//*

答案 2 :(得分:1)

我最近为\code阻止LaTeX输出的目的尝试了同样的事情。

只需在尾随*/之间留一个空格。这确实在结果PDF中显示为空格,但在没有空格的情况下使用它看起来完全相同。结果在PDF中仍然是正确的语法颜色,但也允许您的源保留正确的语法着色并停止源编译器抛出错误:

/**
  \code{.c}
      /* ... * /
  \endocde
 */