1、指针的基本概念
指针的作用:
可以通过指针间接访问内存
内存编号是从0开始记录的,一般用十六进制数字表示
可以利用指针变量保存地址
2、指针变量的定义和使用
语法:数据类型 * 变量名;
示例:
#include<iostream>
using namespace std;
int main(){
//1、指针的定义
int a = 10;
int * p;
//指针变量赋值
p = &a;//指针指向变量a的地址
cout << "a的地址为: " << &a << endl;//打印数据a的地址
cout << "指针p为: " << p << endl;//打印指针变量p
//2、指针的使用
//通过*操作指针变量指向的内存
*p = 1000;
cout << "*p = " << *p << endl;
cout << "a = " << *p << endl;
system("pause");
return 0;
}
输出:
指针变量和普通变量的区别:
普通变量存放的是数据,指针变量存放的是地址
指针变量可以通过" * "操作符,操作指针变量指向的内存空间,这个过程称为解引用
总结1:我们可以通过 & 符号 获取变量的地址
总结2:利用指针可以记录地址
总结3:对指针变量解引用,可以操作指针指向的内存
3、指针所占内存空间
示例:
#include<iostream>
using namespace std;
//所有指针类型在32位操作系统下是4字节,64位是8字节
int main(){
int a = 1;
int * p;
p = &a;
cout << "*p = " << *p << endl;
cout << "sizeof(int *) = " << sizeof(int *) << endl;
cout << "sizeof(p) = " << sizeof(p) << endl;
cout << "sizeof(char *) = " << sizeof(char *) << endl;
cout << "sizeof(float *) = " << sizeof(float *) << endl;
cout << "sizeof(double *) = " <<