2010-04-27 16 views
48

如何在LaTeX中编写“C++”,以便输出看起来不错。例如C$++$看起来不太好:加号太大,空间太多。如何在LaTeX中编写“C++”

+2

又见参考答案:http://tex.stackexchange.com/questions/4302/ prettiest-way-to-typeset-c – quazgar 2012-08-20 16:05:32

+0

你可以看看这个其他问题[LaTeX源代码列表像专业书籍](http://stackoverflow.com/questions/741985/latex-source-code-listing-喜欢在专业书籍),它看起来很棒,并且完美。 – Dexter 2011-07-16 14:22:16

回答

27

对于这样的情况下,标准的解决方案是逐字使用:

\verb!C++! 
+1

我喜欢这个解决方案,但C看起来不好...不像其他文字,所以我想追加加号到正常C 我试着用这个但不工作:C \ thinspace \ verb!++! – mjsr 2010-04-27 21:47:41

+18

我知道了C {} \ verb!++!...看起来我是多么希望它。 – mjsr 2010-04-27 21:55:39

+0

但是我如何做一个定义,*不*吞下面的空间;如下所示:\ def \ cpp {C {} \ texttt {++}} – user2023370 2011-03-22 15:46:47

13

您可以尝试使用打字机字体。

\texttt{C++} 
5

这是我用以前过长...时间:

\newcommand*{\Cpp}{C\ensuremath{++}\xspace} 

使用像\Cpp(需要xspace包)。但正如你所说,它并不是真的很美。

+3

+1为\ xspace解决无/额外空间问题。 – Canella 2011-10-23 19:17:18

18

我一直在使用下面的代码typset一个不错的C++在我的硕士论文。代码已经从german forum逐字复制。你应该能够只是复制粘贴的所有代码的新.tex文档中,并选择相关的东西你...

\documentclass{article} 
\usepackage{relsize} 
\usepackage{lipsum} 

%c from texinfo.tex 
\def\ifmonospace{\ifdim\fontdimen3\font=0pt } 

%c C plus plus 
\def\C++{% 
\ifmonospace% 
    C++% 
\else% 
    C\kern-.1667em\raise.30ex\hbox{\smaller{++}}% 
\fi% 
\spacefactor1000 } 

%c C sharp 
\def\Csharp{% 
\ifmonospace% 
    C\#% 
\else% 
    C\kern-.1667em\raise.30ex\hbox{\smaller{\#}}% 
\fi% 
\spacefactor1000 } 

\begin{document} 
\begin{center} 
{\Huge C++ $\rightarrow$ \C++ \& \Huge C\# $\rightarrow$ \Csharp}\\ 
\bigskip 
\ttfamily 
{\Huge C++ $\rightarrow$ \C++ \& \Huge C\# $\rightarrow$ \Csharp}\\ 
\bigskip 
\sffamily 
{\Huge C++ $\rightarrow$ \C++ \& \Huge C\# $\rightarrow$ \Csharp} 
\end{center} 
\section{\C++} 
\lipsum[1] 
\subsection{\Csharp} 
\lipsum[1] 
\end{document} 
+0

谢谢!!结果是不错的...一个问题,我不明白的代码...你怎么能把C++没有数学环境或\动词后\巨大? – mjsr 2010-04-28 15:24:42

+1

对不起,我不明白你的问题。 \巨大只是在代码中,使其更加可见。如果你在文件开头使用定义,你应该可以在任何环境中的任何地方写\ C++ ... – Habi 2010-04-29 21:32:33

+0

好的,谢谢,我对使用加号有点困惑。我强硬的是,数学环境是不可或缺的,但现在我意识到不是。xD – mjsr 2010-04-30 03:03:51

1

answer,关于TEX网站同样的问题,给出了什么我发现这是一个很好看的方式。

%C++ 
\newcommand\Cpp{C\nolinebreak[4]\hspace{-.05em}\raisebox{.4ex}{\relsize{-3}{\textbf{++}}}} 
%C# 
\newcommand\Csh{C\nolinebreak[4]\hspace{-.05em}\raisebox{.4ex}{\relsize{-3}{\textbf{\#}}} 
3

我发现下面给出了良好的效果:在tex.se.com

\def\Cplusplus{C\raisebox{0.5ex}{\tiny\textbf{++}}}