2010-04-27 151 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{++}}}