algorithm2e、函数、过程、\par、错误

algorithm2e、函数、过程、\par、错误

这可以:

\documentclass{article}
\usepackage[boxed]{algorithm2e}

\begin{document}

\begin{algorithm}
    $x \gets x$\;
    \caption{Identity}
\end{algorithm}

\end{document}

但是,这使用了预定义的环境“功能”(手册第 4 页)

\documentclass{article}
\usepackage[boxed]{algorithm2e}

\begin{document}

\begin{function}
    $x \gets x$\;
    \caption{Identity}
\end{function}

\end{document}

产生此错误

Runaway argument?
Identity@\endcsname ##1{\FuncSty {\algocf@captname Identity@(}\ArgSty \ETC.
./sandbox.tex:10: Paragraph ended before \algocf@captname was complete.
<to be read again> 
                   \par 
l.10 

? r
OK, entering \nonstopmode...
./sandbox.tex:10: Missing \endcsname inserted.
<to be read again> 
                   \par 
l.10 

)
! Emergency stop.

我使用 TexShop,我相信它能编译

simpdftex latex --maxpfb --extratexopts "-file-line-error -synctex=1"

任何帮助都将不胜感激,我没有主意了。

答案1

文档的第 17 页对此进行了解释(讨论环境procedure,但同样的评论也适用于function):

该命令的语法\caption限制如下:您必须将名称放在 2 个括号内,如下所示Name()。您可以在括号内放置参数,并在其后放置文本。如果没有给出参数,则标题中的括号将被删除。

完整示例:

\documentclass{article}
\usepackage[boxed]{algorithm2e}

\begin{document}

\begin{function}
    $x \gets x$\;
    \caption{Identity()}
\end{function}

\end{document}

在此处输入图片描述

相关内容