以下程序的输出结果是 #define MIN(x, y) (x) < (y) ? (x) : (y) main() { int i , j, k; i = 10; j = 15;

日期:2019-06-28 15:28:18 人气:2

以下程序的输出结果是 #define MIN(x, y) (x) < (y) ? (x) : (y) main() { int i , j, k; i = 10; j = 15;

结果为15。 程序的第一行进行带参宏定义,用宏名MIN表示条件表达式(x) < (y) ? (x) : (y) ,形参x,y均出现在条件表达式中。程序中 MIN(i,j) 为宏调用,实参i,j,将代换形参x,y。 宏展开后该语句为: 10*(i) < (j) ? (i) : (j),运算结束的结果为15。 宏只是做了简单的替换操作。而函数的参数只在函数调用时求值一次,并将结果传递给函数即可。 define,无参宏定义的一般形式为:#define 标识符 字符串 define 函数定义一个常量。
    A+
热门评论