当前位置:  编程技术>c/c++/嵌入式

typedef和#define的用法以及区别

    来源: 互联网  发布时间:2014-10-21

    本文导语:  一、typedef的用法 在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: typedef    int       INT;typedef    int       ARRAY[10];typedef   (int*)   pINT; ...

一、typedef的用法

在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:

typedef    int       INT;
typedef    int       ARRAY[10];
typedef   (int*)   pINT;

typedef可以增强程序的可读性,以及标识符的灵活性,但它也有“非直观性”等缺点。

二、#define的用法

#define为一宏定义语句,通常用它来定义常量(包括无参量与带参量),以及用来实现那些“表面似和善、背后一长串”的宏,它本身并不在编译过程中进行,而是在这之前(预处理过程)就已经完成了,但也因此难以发现潜在的错误及其它代码维护问题,它的实例像:

#define   INT             int
#define   TRUE         1
#define   Add(a,b)     ((a)+(b));
#define   Loop_10    for (int i=0; i


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef'
  • 关于typedef的问题
  • typedef的一点疑惑
  • typedef void SigHandler (); ??? 帮忙
  • 关于:typedef unsigned char
  • 请教一个关于typedef程序的问题
  • typedef_struct与struct之间的区别
  • typedef 定义一个类型出错
  • 用typedef定义类型的总结分析
  • 求助:linux下typedef struct {unsigned long long pmd;}pmd_t;中有两个long,是什么意思?
  • 用typedef定义类型详细总结
  • typedef signed long long Int64; 这样的声明为什么在windows VC下不能通过?
  • 为什么我在头文件time.h里找不到time_t的定义呢?只有这个定义typedef __time_t time_t;
  • C语言typedef与复杂函数声明问题的深入解析
  • 如何解决expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef’
  • 用C写的OO模块,碰到编译器抱怨符号多重typedef,怎么解决呢?
  • 1. 请问linux下可以使用“typedef list<对象*> 对象列表名 ”和iterator吗?
  • C++中typedef 及其与struct的结合使用
  • 深入解析C语言中typedef的四个用途
  • C语言基础知识点解析(extern,static,typedef,const)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3