Differences between typedef and #define

来源:互联网 发布:sql执行视图命令 编辑:程序博客网 时间:2024/06/06 00:22

1 typedef int * pint ;//别名,编译器阶段
2 #define PINT int * //宏定义,预处理阶段执行,替换所有的

const pint p ;//p不可更改,但p指向的内容可更改
const PINT p ;//p可更改,但是p指向的内容不可更改。
pint是一种指针类型 const pint p 就是把指针给锁住了 p不可更改
而const PINT p 是const int * p 锁的是指针p所指的对象
2:#define 不是语句 不要在行末加分号,否则 会连分号一块置换。

原创粉丝点击