Abstract


#include <stdio.h>
#define PI 3.1415
 
int main()
{
    float radius, area;
    printf("Enter the radius: ");
    scanf("%f", &radius);
 
    // Notice, the use of PI
    area = PI*radius*radius;
 
    printf("Area=%.2f",area);
    return 0;
}

Function-like Macro


Not same as Function, doesn’t have Type Safety

#include <stdio.h>
#define PI 3.1415
#define circleArea(r) (PI*r*r)
 
int main() {
    float radius, area;
 
    printf("Enter the radius: ");
    scanf("%f", &radius);
    area = circleArea(radius);
    printf("Area = %.2f", area);
 
    return 0;
}

Benefits


  • Saving memory of using variables to store the values