我必须C++
在.tex
文件中插入代码,但我希望该代码的文本像程序中一样是彩色的C++
。如果我使用lstlisting
该C++
程序,但程序是黑白的。有什么想法吗?
答案1
样式基本和手册里给出的一样listings
。
listings
使用几个substyles
关键字、字符串、标识符、注释,每一个基本上都被称为....style
可以在环境\lstset
的可选参数中设置为“任何东西” lstlisting
。
此外,还可以将个人风格定义为简写形式,并与选项一起使用style=...
。
\lstdefinestyle{style name}{key=value list}
定义这样的风格。
\documentclass{article}
\usepackage[x11names]{xcolor}
\usepackage{listings}
\lstset{language=C++,
basicstyle=\small, % print whole listing small
keywordstyle=\color{black}\bfseries\underbar,
% underlined bold black keywords
identifierstyle={\color{red}},%
commentstyle=\color{brown}, % brown comments
stringstyle=\color{blue}\ttfamily, % typewriter type for strings, blue
showstringspaces=false
}
\begin{document}
\begin{lstlisting}
#include <iostream>
// Hello World - Example
int main( int argc, char **argv )
{
std::cout << "Hello World\n";
return 0;
}
\end{lstlisting}
\end{document}
答案2
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[scaled=0.84]{beramono}
\usepackage[utf8]{inputenc}
\usepackage[x11names]{xcolor}
\usepackage{listings}
\lstnewenvironment{CPP}
{\lstset{language=C++,
basicstyle=\small\ttfamily,
keywordstyle=\bfseries,
identifierstyle=\color{red},
commentstyle=\color{brown},
stringstyle=\color{blue},
tabsize=2,
}}{}
\begin{document}
\begin{CPP}
#include <iostream>
// Hello World - Example
int main( int argc, char **argv )
{
std::cout << "Hello World\n";
return 0;
}
\end{CPP}
\end{document}