#define & typedef 区别

宏定义只是简单的字符串代换,是在预处理完成的, 而typedef是在编译时处理的, 它不是简单的代换, 而是对类型说明符重新命名. 被命名的标识符具有类型定义说明的功能.

宏定义为了更符合人习惯的代码,  typedef是 码代码的时候 更清晰.

#include <stdio.h>
#define INT1 int
typedef int INT2;

#define INT3 int*
typedef int* INT4;
int main(int argc, const char * argv[])
{

	INT1 a, b;
	a = 10;
	b = 20;
	printf("a=%d,b=%d\n", a, b);

	INT2 c, d;
	c = 30;
	d = 40;
	printf("c=%d,d=%d\n", c, d);

    //************************ stone ***
    INT3 e, f; // int *e,f ---> int *e , int f
    e = &a;
    f = 20;
    printf("e=%d,f=%d\n", *e, f);

    INT4 h, i; // int * h, int * i
    h = &c;
    i = &d;
    printf("h=%d,i=%d\n", *h, *i);

	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值