其他分享
首页 > 其他分享> > #define和typedef的差别

#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