以该代码为例:
\begin{verbatim}
int main()
{
}
\end{verbatim}
如何在其下方添加标签以供引用?
int main()
{
}
[code 1]
答案1
如果没有选择,float
这里有更好的间距。
\documentclass{article}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[language=C,frame=single,caption=My caption here,label=code1]
int main()
{
}
\end{lstlisting}
From code~\ref{code1} it can be seen clearly....
\end{document}
答案2
一种解决方法是将其包装在figure
环境之下。
\begin{figure}
\begin{verbatim}
int main()
{
}
\end{verbatim}
\caption{My Caption}
\label{my-label}
\end{figure}
答案3
\documentclass{article}
\usepackage{listings}
\begin{document}
\lstset{language=C,frame=single}
\begin{lstlisting}[float,caption=My caption here,label=code1]
int main()
{
}
\end{lstlisting}
From code~\ref{code1} it can be seen clearly....
\end{document}
答案4
我发现这个解决方案有点黑客但很有用,很大程度上受到@nikhilweee 回答的启发:
\begin{table}[H]
\renewcommand\tablename{Code}
\begin{verbatim}
int main()
{
}
\end{verbatim}
\caption{My Caption}
\label{my-label}
\end{table}
这样,标签和标题就会位于顶部,并且不需要将标签“Figure:”或“Table:”应用于代码块。