宏定义,定义一个宏比较两个数的大小
程序员文章站
2024-03-22 11:20:40
...
#include<stdio.h>
#include<math.h>
#define charck(a,b) (((a)-(b))==fabs((a)-(b)))?printf("a>b"):printf("a<b")
int main(void)
{
int a,b;
scanf("%d %d",&a,&b);
charck(a,b);
}
特别注意:上面的宏定义每个变量都要加小括号,因为宏定义在预编译即预处理时只是进行简单的替换,举例如下:
#define a(x,y) x+y
x=2+1;
y=4+5;
本来你用a(x,y)想要的结果是: (2+1)*(4+5) 为27
而实际在预编译即预处理时只是进行简单的替换,结果为:
2+1*4+5 为11
上一篇: 数据结构—双向链表
下一篇: 数据结构——带头结点的双向链表
推荐阅读
-
【C】用一个宏实现求两个数中的最大数
-
定义两个带参的宏,一个用来求s,一个用来求area。写程序,在程序中用带实参的宏名来求面积area.
-
首先定义一个带参数的宏,使两个参数的值互换
-
宏定义,定义一个宏比较两个数的大小
-
完数的定义:如果一个大于1的正整数的所有因子之和等于它的本身,则称这个数是完数,比如6,28都是完数:6=1+2+3;28=1+2+4+7+14。 本题的任务是判断两个正整数之间完数的个数。
-
用宏将一个数字的奇数位和偶数位交换和使用宏实现两个数中求较大值
-
定义两个接口,其中各包括一个抽象方法分别用来完成两个数的加法和减法操作,然后创建一个类KY6_3来实现这两个接口中的抽象方法。编写程序KY6_3.java,将源程序写在实验报告中。
-
宏定义的技巧、宏函数和内联函数的比较
-
宏定义的技巧、宏函数和内联函数的比较
-
定义两个带参的宏,一个用来求area, 另一个宏用来求S