documentclass[UTF-8]{article} usepackage{listings} usepackage{color,xcolor} usepackage{fontspec} usepackage{xeCJK} setmonofont[Mapping={}]{Monaco} %英文引号之类的正常显示,相当于设置英文字体 setsansfont{Monaco} %设置英文字体 Monaco, Consolas, Fantasque Sans Mono setmainfont{Monaco} %设置英文字体 setCJKmainfont{微软雅黑} %中文字体设置 %setCJKsansfont{楷体} %设置中文字体 %setCJKmonofont{} %设置中文字体 definecolor{mygreen}{rgb}{0,0.6,0} definecolor{mygray}{rgb}{0.5,0.5,0.5} definecolor{mymauve}{rgb}{0.58,0,0.82} lstset{ backgroundcolor=color{white}, % choose the background color basicstyle=footnotesizemonaco, % size of fonts used for the code或改成smallmonaco稍大 numbers=left, % 设置行号 numberstyle= inymonaco, % 设置行号字体大小 columns=fullflexible, breaklines=true, % automatic line breaking only at whitespace captionpos=b, % sets the caption-position to bottom tabsize=4, % 把tab扩展为4个空格,默认是8个太长 commentstyle=color{mygreen}, % 设置注释颜色 escapeinside={\%*}{*)}, % if you want to add LaTeX within your code keywordstyle=color{blue}, % 设置keyword颜色 stringstyle=color{mymauve}monaco, % string literal style frame=single, % 设置有边框 rulesepcolor=color{red!20!green!20!blue!20}, % identifierstyle=color{red}, language=c++, } egin{document} egin{lstlisting} inline int gcd(int a, int b) { // 如果a<b,则递归得gcd(b,a%b)即gcd(b, a),即交换了位置,时间复杂度O(log max(a, b)) return b==0?a:gcd(b,a%b) } inline int lcm(int a, int b) { return a/gcd(a,b)*b; } end{lstlisting} end{document}