Neuer Befehl mit Standard funktioniert nicht

Neuer Befehl mit Standard funktioniert nicht

Hallo, ich habe den folgenden neuen Befehl (etwas vereinfacht zur besseren Lesbarkeit):

\newcommand{\xz}[1][0]{x_{#1}}

Ich erwarte folgendes Verhalten:

$\xz$ outputs as $x_0$
$\xz{1}$ outputs as $x_1$

Das kompilierte Ergebnis gibt jedoch Folgendes zurück:

$\xz$ outputs as $x_0$ (ok!)
$\xz{1}$ outputs as $x_01$ (??)

Was fehlt mir da?

Antwort1

Sie haben ein optionales Argument deklariert, daher müssen Sie Folgendes verwenden \xz[1]:

\documentclass{article}
\usepackage{amsmath}

\newcommand{\xz}[1][0]{x_{#1}}

\begin{document}

$\xz\quad\xz[1]$

\end{document}

Bildbeschreibung hier eingeben

\xz{1}wird als \xzohne das optionale Argument und dann verstanden {1}.

verwandte Informationen