C中宏定义与typedef的简单认识
来源:互联网 发布:网络币骗局 编辑:程序博客网 时间:2024/05/16 06:19
说到C中的宏定义,我们肯定会想到define,这里就简单讲讲C语言中宏定义define和typedef的区别
1.首先是在写法上,define定义宏时后面没有分号同时前面要加#,而typedef后面有
2.程序处理上,define在预处理阶段处理,后面编译时遇到相应的宏就进行替换,不会检测错误,而typedef则是编译阶段处理,不是简单替换处理,同时也会检查错误
3.作用上,两者都可以为类型取别名(这个类型取别名更准确说只有typedef算是),但是define还可以定义常量等
4.作用域上,宏定义后面都可以用,而typedef有严格要求,定义的位置决定作用的范围
补充:2中说到define定义的宏用到时简单替换,而typedef不是简单替换,一个经典例子:#define INT int*; INT a,b;这里a的类型是int*,而b的类型是int.。typedef int * INT INT a,b;这里的a,b都是int *类型,所以这里也印证了3中准确说typedef才能算是类型取别名。涉及到const和*组合时也存在明显差异。当然,这些也只是我目前的简单认识。
0 0
- C中宏定义与typedef的简单认识
- 关于C/C++中typedef的定义与用法总结
- C语言基础:C语言typedef(2) - typedef与宏定义的对比
- C语言基础:C语言typedef(1) - typedef简单认识
- 宏定义与typedef的区别
- typedef 与宏定义的区别
- (简单)宏定义 与 用户自定义类型typedef
- C语言中用户定义类型(typedef)的作用
- c语言中用户定义类型(typedef)的作用
- C语言中typedef与#define宏的区别
- Object-C学习(五):结构体(struct)、typedef、以及与#define宏定义的区别
- typedef与宏定义区别
- C经典 宏与typedef的区别
- enum和typedef 与#define宏定义的区别
- C++/C宏定义中##与#的含义
- typedef和#define的定义与区别
- c/c++中typedef详解(此文对typedef用于结构体的定义说明得很清楚到位)
- 转:c/c++中define与typedef的区别
- Ubuntu16.04安装搜狗输入法
- GPL协议
- Java FileFilter
- ios蓝牙后台执行
- Centos下安装red5流媒体服务器
- C中宏定义与typedef的简单认识
- 结构风险最小和VC维理论的解释
- Day5 分支语句和逻辑运算符
- 【九度OJ】题目1074:对称平方数 解题报告
- mysql 索引应用
- AFN 获取数据,数据解析:JSON 介绍
- 一个ksoap2-android调用webService的封装库
- WEB应用开发中的Servlet
- Zipper 递归