我正在尝试使用以下字符串声明一个新命令:
\newcommand{\to8}[1]{\xrightarrow{\mathmakebox[0.8cm]{#1}}}
但编译器返回许多错误。我只是不明白为什么如果我写
\xrightarrow{\mathmakebox[0.8cm]{iiiii}}
在数学模式下,编译器没有返回错误,但是当我想将其定义为新命令时,编译器不允许它?
答案1
您的宏定义没有问题。问题是宏的名称中不能包含数字,因此如果您更改宏的名称,那么一切都会好起来:
顺便说一句,与其发布代码片段,不如发布一个最小工作示例。特别是,代码应该可以编译,除非这是问题所在。这让其他人更容易解决您的问题,从而帮助您。这是您的(更正后的)代码的 MWE:
\documentclass{article}
\usepackage{mathtools}
\newcommand{\toeight}[1]{\xrightarrow{\mathmakebox[0.8cm]{#1}}}
\begin{document}
$\toeight{f}$
\end{document}
答案2
不能将数字作为命令的一部分。
\documentclass{article}
\usepackage{mathtools}
\newcommand{\toeight}[1]{\xrightarrow{\mathmakebox[0.8cm]{#1}}}
\begin{document}
\begin{equation}
\toeight{xxx}
\end{equation}
\end{document}