在文本中引用列表时出现“错误”数字

在文本中引用列表时出现“错误”数字

我正在使用 lstlisting 包将源代码放入我的 pdf 文件中:

\documentclass{scrbook}
\usepackage{listings}
\lstset{ %
language=xml,
basicstyle=\footnotesize,       % the size of the fonts that are used for the code
numbers=none,                   % where to put the line-numbers
xleftmargin=2em,
numberstyle=\footnotesize,      % the size of the fonts that are used for the line-numbers
stepnumber=2,                   % the step between two line-numbers. If it's 1, each line will be numbered
numbersep=5pt,                  % how far the line-numbers are from the code
backgroundcolor=\color{white},  % choose the background color. You must add \usepackage{color}
showspaces=false,               % show spaces adding particular underscores
showstringspaces=false,         % underline spaces within strings
showtabs=false,                 % show tabs within strings adding particular underscores
frame=yes,                   % adds a frame around the code
tabsize=2,                      % sets default tabsize to 2 spaces
captionpos=b,                   % sets the caption-position to bottom
breaklines=true,                % sets automatic line breaking
breakatwhitespace=false,        % sets if automatic breaks should only happen at whitespace
title=\lstname,                 % show the filename of files included with \lstinputlisting;
                                % also try caption instead of title
escapeinside={(*}{*)},         % if you want to add a comment within your code
morekeywords={*,...},            % if you want to add more keywords to the set
keywordstyle=\color[rgb]{0,0,1},
        commentstyle=\color[rgb]{0.133,0.545,0.133},
        stringstyle=\color[rgb]{0.627,0.126,0.941}
}

\begin{document}
\begin{lstlisting}[language=java,caption={MyCaption}
\label{lst:myLabel}]
See Code-Listing \ref{lst:myLabel}.
\end{document}

问题是,在标题中我看到了(正确的)“清单 7.2”,在我的文本中我看到了“5”,但我也希望那里有“7.2”:-)

答案1

您必须在键中提供标签:

\begin{lstlisting}[language=java,caption={MyCaption},label=lst:myLabel]

手册的第 16 页(但不太容易找到)。

相关内容