黑马程序员技术交流社区

标题: 有参宏定义和使用方法 [打印本页]

作者: M.W    时间: 2016-7-7 14:30
标题: 有参宏定义和使用方法
C语言允许宏带有参数。在宏定义中的参数称为形式参数,在宏调用的参数称为实际参数。
对带参数的宏,在调用中,不仅要宏展开,而且要用实参去代换形参。

带参宏定义的一般形式是;
#define  宏名(形参表列)  字符串

//有参宏
#defineSUM(a)a + b
#defineM(x, y)x * y + x + y
#define M1(a, b)a + 3 * y

int main(intargc, const char * argv[]) {
    // insertcode here...

    int b = 3;
    int result = SUM(3); //在调用中要把实参带入
    printf("result =%d\n", result);

    int result2 = M(2, 3);
               //x * y + x + y
                //2 * 3 + 2 + 3 = 11
    printf("result2 =%d\n", result2);

    int y = 2;
    int result3 = M1(4, 5);
           //a + 3 * y
            //4 + 3 * 2 = 10
    printf("result3 =%d\n", result3);







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2