如何创建 .+?

如何创建 .+?

我想展示a = b .+ 1

但它显示为a = b. + 1(移动.到b旁边)。

答案1

\newcommand{\periodplus}{\mathbin{{.}{+}}}

\( a=b\periodplus 1 \)

TeX(以及 LaTeX)不会解释数学公式代码中的空格,而是依赖于其预定义的规则。对于 TeX a.b表示“普通”符号和+二进制运算符号。

连续的普通符号之间没有任何空格,而是组合

普通二元运算普通

将在二进制运算符号周围设置空格。

任何子公式都可以使用 转换为二进制运算符号\mathbin{<subformula>}。我将两个字符都放在括号中,以确保它们在子公式中被解释为普通符号(无论如何它们都会被解释)。

当然可以说

\( a = b \mathbin{.+} 1 \)

每次都会出现这种情况,但是如果它出现多次,最好有一个命令来解决这个问题。

答案2

如果这是 MATLAB 代码,而不是常规数学,那么lstinline来自列表包会很有用:

在此处输入图片描述

\documentclass{article}
\usepackage{listings,xcolor}
\lstset{language=MATLAB,basicstyle=\ttfamily,stringstyle=\color{red}}
%\lstset{showstringspaces=false} % uncomment this if you don't want spaces in
                                 % strings to get their own symbols
\newcommand{\periodplus}{\mathbin{{.}{+}}}

\begin{document}
The line of MATLAB code \lstinline|a = b .+ 1| should not look like the math
equation \( a=b\periodplus 1 \). And there's more difference between
\lstinline|s = sprintf('x = %d\n',x)| and
\(s = sprintf('x = \%d\backslash{}n',x) \).
\end{document}

我之所以提到这一点只是因为我从未见过.+数学运算符,但它在 MATLAB 中一直被使用。

相关内容