typedef的用法

typedef

typedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。

具体区别在于:
若struct node{ }这样来定义结构体的话。在定义 node 的结构体变量时,需要这样写:struct node n;
若用typedef,可以这样写:typedef struct node{}NODE; 。在申请变量时就可以这样写:NODE n;就是自定义了一种数据类型。比如整型,用的时候是int age=10;int是数据类型,age是整型变量。同样typedef就是一种可以自定义类型的关键字,这样你就可以自定义类型了。

  • typedef 创建的符号只能用于数据类型,不能用于值。而#define 创建的符号可以用于值。
  • typedef 是由编译器来解释,而不是预处理器。
  • typedef 使用起来更加灵活。

下面使用typedef定义一个数据类型

int main()
{
	typedef unsigned char BYTE;	
	BYTE c = 10;	
	printf("%d \r\n",c);
	
	system("pause");
	return 0;
}

#include <stdio.h>
 
typedef struct NUM
{
     int a;
     int b;
}DATA,*PTRDATA;
 
int main()
{
       DATA data;           //定义结构体变量
       PTRDATA pdata;   //定义结构体指针
       pdata=&data;      //结构体指针指向结构体变量      
 
       data.a=100;
       data.b=500;
 
       printf("a=%d\nb=%d\n",data.a,data.b);
       printf("a=%d\nb=%d\n",pdata->a,pdata->b);
       return 0;
}

提高代码可移植性:由于不同的编译器对数据类型的定义可能存在差异,使用 typedef 可以提高代码的可移植性。

例如,如果使用 short int 类型来定义变量,可能在不同的编译器上会有不同的长度,导致代码的可移植性受到影响。使用 typedef 定义一个新的类型名称,可以确保该类型在不同的编译器上都具有相同的长度和语义。

总之,typedef 是一个非常有用的关键字,它可以提高代码的可读性、简化复杂的类型声明,以及提高代码的可移植性。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橙栩源

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值