指针:
1. 指针首先是一种基本数据类型。int*、double*
2. 指针的本质是内存的地址。
3. 指针的加减,实际上是让指针发生偏转,指向另外的内存位置(而不是单纯的内存编号加1减1)。指针跟它所指向的真正数据类型相关,指针加1减1会使指针指向的地址增加或者减少一个对应的数据类型的长度。如下:
# include <iostream>
using namespace std;
int main()
{
int str[] = {1, 2, 3};
int* p = str;
cout<<p<<": "<<*p<<endl;
++p; //指针跟它所指向的数据的真正数据类型相关,指针加1减1会使指针指向的地址增加或者减少一个对应的数据类型的长度
cout<<p<<": "<<*p<<endl;
return 0;
}
/*结果:
0x6ffe20: 1
0x6ffe24: 2 */
4. NULL 与 nullptr: