首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

用宏定义的方法写MAX(x,y)解决思路

2012-03-08 
用宏定义的方法写MAX(x,y)首先祝各位程序员新年快乐!下面是我的问题:在C语言下,怎么用宏定义写一个能处理

用宏定义的方法写MAX(x,y)
首先祝各位程序员新年快乐!
下面是我的问题:

在C语言下,怎么用宏定义写一个能处理任意数据类型的MAX(x,y)呢?还是像函数一样写不出来?

但是我在书上看到用宏定义的方式比函数更加“通用” 说是可以接受任何类型的函数,我这样写不行吗?应该怎么样写?

C/C++ code
#include<stdio.h>#define MAX(x,y) ((x) > (y) ? (x) : (y))int main(void){    float x = 5.2;    int y = 3;    float max = MAX(x,y);    printf("%d\n",max);    return 0;}


[解决办法]
#include<stdio.h>
#define MAX(x,y) ((x) > (y) ? (x) : (y))

int main(void)
{
float x = 5.2;
int y = 3;
float max = MAX(x,y);

printf("%f\n",max);
return 0;
}
输出应该用float型,,,

热点排行