#undef — Annule la définition d'une macro.
Les macros sont des substitutions de texte qui sont faites dans l'orchestre lors de sa lecture. Le système de macro de l'orchestre de Csound est très simple, et il utilise les caractères # et $ pour définir et appeler les macros. Il permet d'économiser de la frappe et peut conduire à une structure cohérente dans un style consistant. Il est similaire, tout en étant indépendant, au système de macros du langage de partition.
#undef NOM -- annule la définition d'un nom de macro. Si une macro n'est plus nécessaire, on peut annuler sa définition avec #undef NOM.
Il faut prendre certaines précautions avec les macros de substitution de texte, car elles peuvent parfois produire d'étranges résultats. Elles ne tiennent compte d'aucune valeur sémantique, et ainsi les espaces sont significatifs. C'est pourquoi, au contraire du langage C, la définition délimite le texte de substitution par des caractères #. Utilisé avec discernement, ce système de macro est un concept puissant, mais il peut aussi être mal employé.