使用typedef关键字的目的
在日常代码应用中,经常会看到typedef关键字,尤其在刚刚学习单片机标准库时候,typedef关键字无处不在。其作用就是给数据类型起别名,便于代码的使用与阅读。
typedef关键字应用场景
1、对常见数据类型进行测试
分别对int、char、double、int*常见数据类型进行typedef应用,代码及结果如下图所示。
#include<stdio.h>
typedef int ZS;
typedef char ZF;
typedef double XS;
typedef int* ZZ;
int main()
{
ZS a = 1;
ZF b = 's';
XS c = 1.2;
ZZ d = &a;
printf("%d\n%c\n%0.f\n%d\n", a, b,c,*d);
return 0;
}
测试结果如下图所示。
2、typedef关键字与结构体匹配使用
typedef关键字通常与结构体匹配使用,下面分别使用typedef关键字与不使用两种方式进行测试比对,不使用typedef关键字方案如下所示。
#include<stdio.h>
#include<string.h>
struct Mystruct
{
int age;
char name[];
};
struct Mystruct me;
int main()
{
me.age = 10;
char a[] = "小明";
strcpy(me.name, a);
printf("名字:%s\n", me.name);
puts("");
printf("年龄:%d\n", me.age);
return 0;
}
输出结果如下所示。
使用typedef关键字方案如下所示。
#include<stdio.h>
#include<string.h>
typedef struct
{
int age;
char name[];
}Mystruct;
Mystruct me;
int main()
{
me.age = 15;
char a[] = "小红";
strcpy(me.name, a);
printf("名字:%s\n", me.name);
printf("年龄:%d\n", me.age);
return 0;
}
输出结果i如下所示。
上文如有错误,恳请大佬指正。