Red de conocimiento informático - Conocimiento informático - ¿Qué significa la definición de macro en lenguaje C?

¿Qué significa la definición de macro en lenguaje C?

En los programas fuente C, los identificadores llamados macros pueden representar cadenas. La definición de macro se completa mediante el comando de definición de macro en el programa fuente, y el preprocesador completa automáticamente el reemplazo de macro. La definición de macro es una de las tres funciones de preprocesamiento proporcionadas por el lenguaje C. Estas tres funciones de preprocesamiento incluyen: definición de macro, inclusión de archivos y compilación condicional.

En lenguaje C, el preprocesador leerá el código fuente, verificará las declaraciones y definiciones de macros que contienen instrucciones de preprocesamiento y convertirá el código fuente en consecuencia; el preprocesador también eliminará los comentarios en el programa y los espacios en blanco adicionales.

Una directiva de preprocesador es una línea de código que comienza con #. Excepto por los espacios en blanco, # debe ser el primer carácter de la línea. # va seguido de la palabra clave directiva y se permiten varios espacios en blanco entre # y la palabra clave directiva.

Macros

El propósito es automatizar secuencias de uso común o lograr abstracciones más poderosas.

Los compiladores o preprocesadores ensambladores para lenguajes informáticos como C o ensamblador implementan sistemas de macros simples.

Los lenguajes tipo Lisp como Common Lisp y Scheme tienen sistemas de macros más sofisticados: las macros se comportan como si fueran transformaciones de su propio texto de programa a través de funciones, y estas transformaciones se pueden expresar en lenguajes completos. Las macros C definen sustituciones para un bloque de sintaxis, mientras que las macros Lisp controlan el cálculo de un bloque de código.

Referencia: Enciclopedia Baidu - Definición de macro