如果程序中同时出现了typedef和#define,编译器会怎么办?
来源:互联网 发布:电脑视频剪辑小软件 编辑:程序博客网 时间:2024/05/16 17:05
今天看书的时候,无意间写出了这样的程序:
typedef long long LL;#define LL long longLL l = 0;
编译了一下,编译器竟然没有报错,我将光标放到LL处, 上面两条定义都会显示。
此时我就纳闷了,编译器究竟用的那一个呢,
想找个验证的方法,正当思考无果的时候,
我脑中泛起了预处理的定义,
其实这样想来便很简单了,
预处理命令总是在程序代码未正式编译前就替换掉了代码中的宏定义关键字,
故,待程序经过预编译后,代码中便没有了LL这样的关键字了,那么tepedef这条语句就再也无用了。
到此,此问题编译通过的缘由基本清楚。
0 0
- 如果程序中同时出现了typedef和#define,编译器会怎么办?
- c 编译器及#define和typedef
- 如果一个程序同时链接了MSVCRT.lib和libcmt.lib回出现函数重定义错误
- 细说c++中 define 和 typedef
- C#中属性实为方法,如果类中只是定义了属性,则编译器会自动生成相应的字段
- typedef和#define
- typedef 和 define
- #define和typedef
- #define和typedef比较
- 关于#define和typedef
- typedef和#define
- define和typedef + tips
- #define和typedef区别
- #define和typedef(转载)
- define和typedef区别
- #define和typedef区别
- define const 和 typedef
- #define和typedef
- javabean, ejb, entitybean的区别,以及POJO的概念
- 每日算法之二十五:Divide Two Integers
- 链表倒序
- linu串口编程入门
- Java多线程与并发库高级应用
- 如果程序中同时出现了typedef和#define,编译器会怎么办?
- Log4Net使用指南
- Android中Intent的匹配规则和注意事项
- Myeclipse导入工程乱码解决办法
- 数据科学工具箱week3笔记
- Lua虚拟机之字节码(三)
- leetcode: Convert Sorted Array to Binary Search Tree
- java中统计程序运行时间
- Java图形开发相关