黑马程序员技术交流社区

标题: C语言--typedef的使用 [打印本页]

作者: Jack-xie    时间: 2014-10-16 20:41
标题: C语言--typedef的使用
typedef的作用就是给数据类型起别名。

1.给基本数据类型起别名:
typedef int MyInt;
typedef MyInt MyInt2;

2.给指针类型起别名:
typedef char *string;
string name = "Jack";

3.给结构体起别名:
typedef struct student
{
        int age;
}MyStu;

typedef struct
{
        int age;
}MyStu;

4.给枚举起别名:
typedef enum{Man,Woman}Gender;

5.给函数指针起别名:
typedef int (*MyPoint)(int,int);

6.给结构体指针改名:
typedef struct Person
{
        int age;
}* PersonPoint;

7.typedef和宏定义的区别:
typedef char* string1;  // 表示给 char* 起名为 string1
#define string2 char*;  // 表示把 char* 替换成 string2

相同点,都可以这么使用:
string1 s = "abc";
string2 ss = "ABC";

区别是:typedef是把类型给换名了,而宏定义只是纯粹的字符串替换。
比如:
string1 s1, s2;  因为string1是一个类型,所以相当于  string1 s1;   string1 s2; 也就是 char *s1; char *s2; 两个都是指针。   
string2 s3, s4;  则相当于   char *s3, s4;   也就相当于  char *s3; char s4;   所以s4并不是一个指针变量,而是一个char变量。

作者: 黄花菜    时间: 2014-10-27 08:57
挺完整的,不错
作者: soulPo.guo    时间: 2014-10-27 09:41
再次充电
作者: mayhaha    时间: 2014-11-28 00:21
mark 一下  
作者: 时振    时间: 2014-11-30 20:18
学习学习。。。。。。
作者: 世俗孤岛    时间: 2015-3-4 12:43
总结的不赖
作者: 丶小千    时间: 2015-3-4 13:44
这不错

作者: 世俗孤岛    时间: 2015-3-11 13:31
是个有用的东东
作者: xiaoxiong    时间: 2015-4-1 17:37
总结的挺好的
作者: xiaoxiong    时间: 2015-4-1 17:41
对我们这些初学者很有用
作者: LuciferTJD    时间: 2015-4-1 17:55
又学习了
作者: 小白一号    时间: 2015-4-1 20:56
有那么点包装的意思
作者: darewolf    时间: 2015-4-3 00:10
学习了,哈哈





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2