Possible Duplicate:
Different command definitions with and without optional argument
I would like to define a macro which takes an optional argument, and behaves in different ways depending on if the optional argument is given or not. As a very simple example, I would like to define a new macro
\newcommand{\example}[0][]{macro definition}
which outputs
optional argument was omitted
if the optional argument was omitted, and
optional argument was given
if the optional argument was given. How can I achieve this?

[0]here would create a command with no arguments at all: you need[1][]to have one optional argument. – Joseph Wright Jun 05 '12 at 11:06