我有以下几行代码,我想将其添加到我的 Beamer 演示文稿中。我尝试了下面提到的方法,但失败了。要求它还应显示行号。
1. int main(){
2. printf("hello");
3. return 0;
}
我用的是这个:
\begin{frame}[fragile]
\semiverbatim{
1. int main(){
2. printf("hello");
3. return 0;
}
\end{frame}
答案1
您需要一个\begin{frame}[fragile]
环境,对于行号,您可以使用listings
包,它有许多选项,对于行号,它是numbers=left
。您还可以使用\lstinputlisting{yourfile.c}
直接输入 C 文件,并且lstautogobble
对于根据第一行删除缩进很有用。有关排版 C 代码的更多选项(颜色……),请参阅例如这个答案,我提供了一个非常简单的示例。顺便说一句,下次提供一个完整的(即可编译的)最小工作示例,如下所示:
\documentclass[]{beamer}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{listings}
\usepackage{lstautogobble} % Provides autogobble, which is useful to remove indentation based on first line
\lstset{ %
language=C,
numbers=left,
numberstyle=\tiny,
stepnumber=1,
numbersep=5pt,
breaklines=true,
autogobble=true, % Removes indentation based on first line
}
\begin{document}
\begin{frame}[fragile]{Title}
\begin{center}
\begin{tabular}{c}
\begin{lstlisting}
int main(){
printf("hello");
return 0;
}
\end{lstlisting}
\end{tabular}
\end{center}
\end{frame}
\end{document}