1,C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字。
#include<stdio.h>
typedef unsigned char BYTE;
int main(){
BYTE a;
a='a';
printf("%c",a); }
结果输出是 a
2,您也可以使用 typedef 来为用户自定义的数据类型取一个新的名字。例如,您可以对结构体使用 typedef 来定义一个新的数据类型名字,然后使用这个新的数据类型来直接定义结构变量
#include<stdio.h>
typedef struct Students{
char * name;
int age;
}Student;
int main(){
Student * student;
student->name="lisi";
student->age=;
printf("name is:%s\n",student->name);
printf("age is:%d\n",student->age);
}
输出结果是name is:lisi
age is:27;
3,typedef vs #define
#define 是 C 指令,用于为各种数据类型定义别名,与 typedef 类似,但是它们有以下几点不同:
- typedef 仅限于为类型定义符号名称,#define 不仅可以为类型定义别名,也能为数值定义别名,比如您可以定义 1 为 ONE。
- typedef 是由编译器执行解释的,#define 语句是由预编译器进行处理的。