`\usepackage{xparse}
\makeatletter
\NewDocumentCommand{\cccpc}{msmo}
{\IfBooleanTF{#2}{\textbf}{\@firstofone}%
{art.~#3,\IfNoValueF{#4}{ co.~#4,}~#1}%
}
\makeatother
\newcommand{\cc}{\cccpc{c.c.}}
\newcommand{\cpc}{\cccpc{c.p.c.}}
\begin{document}
\`E molto importante conoscere l'\cc*{2}[3]; meno importanti sono
l'\cc{2211}[11] e l'\cc{212222}.
\end{document}`
Con l’aiuto di xparse è più facile costruire comandi con variante asterisco e con argomenti opzionali. Definisco dunque un comando generico che ha come primo argomento obbligatorio l’abbreviazione del codice in questione; poi c’è un asterisco opzionale: con l’asterisco il contenuto viene composto in nero; poi l’argomento obbligatorio, cioè il numero dell’articolo e, per finire, come argomento opzionale il comma.
Ciao
Enrico