1.空指针:
1)…空指针:指针变量指向内存中编号为0的地址(空间);
2).用途:初始化指针变量
3).空指针指向的内存是不可以访问的;
2.野指针:
1).野指针:指针变量指向非法的内存空间
2).野指针指向的内存是不可以访问的;
3.const修饰指针常量,及常量指针:
在这里插入代码片:
#include<iostream>
using namespace std;
int main(){
//1.const修饰指针 常量指针
int a = 10;
int b = 10;
const int *p = &a;
//指针指向的值不可以修改,指针的指向可以修改;
//*p = 20错误;
p = &b;
//2.const修饰常量 指针常量
int * const p2 = &a;
*p2 = 100;
//p2 = &b; 错误;指针指向不可以修改
//3.const修饰指针和常量,指针指向以及指针值都不能被修改
const int *p3 = &a;
/**p3 = 100;
p3 = &b;*///都是错误的
return 0;
}
技巧:看const右侧紧跟着的是指针还是常量,是指针就是常量指针;是常量就是指针常量;