typedef

来源:互联网 发布:软件侵权的证据 编辑:程序博客网 时间:2024/06/18 13:37

typedef

关键字
给一个已经存在的数据类型取一个别名

(1) 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。
比如:
char*p1,p2
//此时声明了一个char *p1和一个char类型的p2

但是用typedef可以解决同时声明多个:
typedef char* ch;
ch p1,p2 ;
//此时声明了两个char*的变量p1和p2。


(2)typedef 与 struct

#include<stdio.h>typedef struct date{    char a;//成员变量    int b;    char name[20]; }A;//此处的分号是不可以少的A a; 

struct date 是标识符,必须一起使用,此时定义了一个类型, 给这个struct date 类型取了一个别名叫做A(定义类型的时候不会分配空间)。

创建了一个结构体类型为struct date ,结构体的变量名为a。(创建结构体的时候会分配空间)。

sizeof(struct date)来测量类型的大小。

sizeof(a)测量这个结构体变量的大小。

#include<stdio.h>typedef struct student{    char a; }stu_st,*stu_pst;

(1)
struct student 是类型名。
stu_st是类型名的别名。
struct student str1 == stu_st str1

(2)
stu_pst 是struct student* 的别名
stu_pst == struct student * str2 ==stu_st * str2

原创粉丝点击