#define和typedef的差别
作者:互联网
如下的p1,p2,p3,p4有什么区别呢?
实际上p1,p2,p3均为char*类型指针,而p4成了char类型
编写了两个简短的小程序。
1.typedef
1 typedef char* CHAR_POINTER; 2 int main() 3 { 4 CHAR_POINTER p1,p2; 5 char c; 6 p1 = &c; 7 p2 = &c; 8 }
编译成功。
2.define
1 #define CHAR_POINTER char* 2 int main() 3 { 4 CHAR_POINTER p1,p2; 5 char c; 6 p1 = &c; 7 p2 = &c; 8 }
用gcc编译有警告,g++编译错误,如下:
标签:p2,CHAR,typedef,差别,char,p1,POINTER,define 来源: https://www.cnblogs.com/kunshanpipixia/p/14132480.html