程序列表输出的文本比平时更宽

程序列表输出的文本比平时更宽
\documentclass[12pt]{article}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
\begin{document}

\texttt{int main(void)} is rendered tighter than in the listing.
What lstlisting option would need changing?

\begin{lstlisting}[numbers=left,language=c,showtabs=true]
int main(void)
{
 printf("Hi world\n");
}
\end{lstlisting}
\end{document}

答案1

这是由columns规范控制的(参见手册的第 2.10 节listings。)您没有说明是否希望间距在内联时更宽(如代码)或在列表本身中更窄。

为了使内联代码与示例列表相匹配,请使用:

\lstinline[language=c,columns=fixed]{int main(void)}

为了使列表与内联代码匹配,请使用:

\begin{lstlisting}[numbers=left,language=c,showtabs=true,columns=flexible]

如果希望两者相同,请column对两者使用相同的规范。内联列表的默认值为flexible;列表的默认值为fixed

相关内容