一、概述
C语言中的typedef有一个非常有用的作用就是定义类型。
例如:如果我想要定一个Person结构体,struct Person ,使用的时候需要这样:struct Person p; 如果我们使用typedef给给这个结构体重新定义,则变成了。typedef struct Person ,这样使用:Person p;也就是可以去掉前面的struct关键字。
在下面的小例子中还有一个定义将char * 定义成一个String字符串的例子。
二、代码实例
#include <stdio.h> //标准输入输出 #include <string.h> //对字符串处理 #include <stdlib.h> //malloc free 函数 /** typedef: 1.可以简化struct关键字 2.可以起别名。例如:下面这个例子中,如果不用typedef这个关键字,则在使用Person这个结构体的时候只能使用struct Person来定义类型。而一旦使用typedef则只需要用 Person就行了,这就比较符合主流的类型定义习惯了 **/ //定义一个人结构体 // struct Person{ // char *name; // int age; // }; typedef struct Person{ char *name; int age; }Person; int main(int argc,char * argv){ //1.起别名 /**使用typedef之前需要这样做**/ //给结构体Person的name和age属性赋值 //struct Person p; //p.name = "luo luo yang"; //p.age = 3; //printf("name:%s ",p.name); //printf("age:%d",p.age); /**使用typedef之后只需要这样做----》**/ Person p; p.name = "luo luo yang"; p.age = 3; printf("My name is:%s ",p.name); printf("I am %d years old. ",p.age); //2.定义数据类型 typedef char * String; String personName = "tony"; printf("My English name is %s",personName); return 0; }