You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LaTeX代码中@符号的功能是什么?附实际使用示例

LaTeX中@符号的作用解析

在LaTeX里,@不是运算符,它是用来区分内核/宏包「内部命令」和用户「可用命令」的标识符。

默认情况下,LaTeX不允许用户在普通文档代码里直接使用带@的命令——这类命令属于内核或宏包的内部实现细节,比如你示例里的\@twoside、\c@page。这么设计的核心目的是避免用户自定义命令和系统内部命令重名,减少命名冲突。如果用户确实需要调用这类内部命令,得先通过\makeatletter将@的字符类别改为字母(默认属于特殊字符),使用完再用\makeatother恢复默认设置。

看你给出的示例代码:

\def\cleardoublepage{%
    \clearpage%
    \if@twoside%
        \ifodd\c@page%
        \else%
            \thispagestyle{empty}%
            \vspace*{\fill}%
            \newpage%
        \fi%
    \fi%
}

其中\@twoside是内核维护的布尔变量,用于判断文档是否启用双面排版;\c@page是对应page计数器的内部命令,代表当前页码。这段代码的作用是自定义\cleardoublepage命令:先执行\clearpage清空当前页的浮动元素,若文档为双面排版且当前页码是偶数,则生成一个无页码样式的空白页,保证下一页从奇数页开始。

内容的提问来源于stack exchange,提问作者Thomas Didymus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 18:20:39