
こんにちは。次の新しいコマンドがあります (読みやすくするために少し簡略化されています)。
\newcommand{\xz}[1][0]{x_{#1}}
次のような動作を期待しています:
$\xz$ outputs as $x_0$
$\xz{1}$ outputs as $x_1$
ただし、コンパイルされた結果は次を返します:
$\xz$ outputs as $x_0$ (ok!)
$\xz{1}$ outputs as $x_01$ (??)
何が足りないのでしょうか?
答え1
オプションの引数を宣言したので、以下を使用する必要があります\xz[1]
。
\documentclass{article}
\usepackage{amsmath}
\newcommand{\xz}[1][0]{x_{#1}}
\begin{document}
$\xz\quad\xz[1]$
\end{document}
\xz{1}
\xz
は、オプションの引数なしでと解釈され、その後 となります{1}
。