宏将一个数字的奇数位和偶数位交换
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#define CHANGE(x) (((x&(0x55555555))<<1) | ((x&(0xAAAAAAAA))>>1)) //提取x的奇数位并左移一位 偶数位左移一位
#include<stdio.h>
int main()
{
int x = 0;
printf("请输入数字\n");
scanf("%d",&x);
printf("交换后:%d\n", CHANGE(x));
return 0;
}
使用宏实现两个数中求较大值
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#define MAX(a,b) ((a)>(b)?(a):(b))
int main()
{
int s = 0;
int x = 0;
int max = 0;
printf("请输入两个数字\n");
scanf("%d%d",&s, &x);
max = MAX(s, x);
printf("%d", max);
return 0;
}