码迷,mamicode.com
首页 > 编程语言 > 详细

C语言中的typedef跟define的区别

时间:2016-01-07 16:31:59      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

今天用C语言练习时涉及到了typedef和define的使用问题,那么他们的区别是啥?这种情况下为什么要用typedef?哪种情况下为什么要用define呢?

学习C的时候的你是否考虑过这个问题呢?

今天我决定梳理一下,以备后用。

相同点:

  1、都可以给变量起别名

不同点:

  1、define定义后可以扩展,而typedef则不可以。

1  //定义完一个整型的数据后补充定义为无符号的
2 
3 #define zhengxing int
4 unsigned zhengxing;//正确
5  
6 typedef zhengxing int
7 unsigned zhengxing; //错误
#行内代码
1
//定义完一个整型的数据后补充定义为无符号的
2 3 #define zhengxing int 4 unsigned zhengxing;//正确 5 6 typedef zhengxing int 7 unsigned zhengxing; //错误

  2、typedef能够连续定义,define则不可以。

#define apple char*
apple val1, val2; //val1 是指针类型 char*, val2 是 char 类型。
 
typedef apple char*
apple val1, val2; // val1 和 val2 都是指针类型 char*

后续继续补充......

 

C语言中的typedef跟define的区别

标签:

原文地址:http://www.cnblogs.com/arvintang/p/5109910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!