const 指针 、#define 、typedef 区别于详解

版权声明:欢迎转载,但是亲请注明转载原文地址,谢谢,么么哒 https://blog.csdn.net/qq_33154343/article/details/83863456

目录

 

1.const指针详解:

 

2.#define、const、typedef预处理详解


1.const指针详解:

const  int   *   p;                   (用得最多)

②            int   *   const   p;        =....

const   int   *   const   p;        (用的最少)


                                                     目标的值                指向

①指向常量的指针       ▬▬▶       不能改                   可以

②指向变量的常指针   ▬▬▶       可以                       不能改

③指向常量的常指针   ▬▬▶       不能改                    不能改


 

2.#define、const、typedef预处理详解

①C:         #define          宏常量           ▌  #define   NUMBER   10   (结尾无分号)

②C++:  const             const常量     ▌   const     int   NUM   =   10 ; 

③C++:  typedef          命别名           ▌   typedef   unsigned   int    ┗━┛   NINT  ;   (编辑器寻找最后一个空格┗━┛后的为别名)


其中:

① #define  是 直接进行完整的字符替换 ,再预编译时候就进行替换。

②const常量完全可以代替宏常量 (C++规则推荐使用const,尽量不要使用#define)

③typedef只能够为已经存在类型命一个别名,而不能创造一种新的类型(比如struct 可以创造新的类型)

猜你喜欢

转载自blog.csdn.net/qq_33154343/article/details/83863456