1.指针的声明:

string* str1, str2;             //str1是指向string对象的指针, str2是string类型的变量

string *str1, *str2;           //str1是指向string对象的指针,str2是指向string对象的指针


2.建议程序员在使用之前初始化所有指针,初始化指针应注意:

int zero = 0;

int *p = zero;                  //错误,指针只能接收常量对象

const int c_zero = 0;

int *p1 = c_zero;            //正确


3.预处理器变量NULL:

该变量在cstdlib头文件中定义,其值为0,如果在代码中使用这个预处理器变量,

则编译时会自动被数值0替换,预处理器变量不是在std命名空间中定义,

因此其名字应为NULL,而非std::NULL.


4.指针只能初始化或赋值为同类型的变量地址或指针