Puesto salvaje

El final ha terminado, guárdelo rápidamente

Baidu Cloud

Edite este párrafo 2. Definición de macro con parámetros:

¿En? Además del reemplazo general de cadenas, ¿también se requiere la sustitución de parámetros?

?Formato:?

?#definir cadena de nombre de macro (lista de parámetros)?

?For ejemplo: #define S(a,b) a*b?

?area=S(3,2); el primer paso se reemplaza por area=a*b y el segundo paso es Cambiar a; area=3*2;?

?Similar a una llamada de función, hay un proceso de combinación ficticia y real:?

?(1) Si el parámetro real es una expresión , ¿Es fácil preguntar?

?#define S(r) r*r?

?area=S(a+b);El primer paso se reemplaza por area= r*r;, El segundo paso se reemplaza por area=a+b*a+b;?

?La definición de macro correcta es #define S(r) ((r)*(r)) ?

(2) ¿No puede haber espacios entre el nombre de la macro y los paréntesis de los parámetros?