编程语言
首页 > 编程语言> > C/C++指针基础--认识指针

C/C++指针基础--认识指针

作者:互联网

什么是指针?
从根本上看,指针是一个值为内存地址的变量,即指针变量的值为地址。在32位计算机中,一个指针占4 Byte, 而64位中一个指针占8 Byte。
CPU无法直接在硬盘上读取数据,是通过内存读取的(地址总线,数据总线,控制总线),CPU通过地址总线找到该条数据,通过控制总线判断是读(Re)还是写(Wr), 通过数据总线将改数据读取到CPU或者从CPU写到内存中。所以,地址总线的宽度决定了CPU的寻址功能,数据总线的宽度决定了CPU单次数据传输的传送量(也就是数据传输速度),控制总线决定了CPU对其他控件的控制能力以及控制方式。计算机是64位,32位,16位,指的是计算机CPU中通用寄存器一次性处理、传输、暂时存储信息的最大长度。也就是CPU在单位时间内能一次处理的二进制数的位数。

间接运算符(indirection operator):*
地址运算符:&

声明指针:

int    *pi;
char   *pc;
float  *pl,*py;
float  *px, py;     //注意这样值定义了一个指针px, py是float型的变量

指针和变量名之间的空格可以省略,如int pi 和 int * pi 和 int pi 都可以;
注意:指针是一个新类型,不是整数类型,不能把两个指针相乘;

int  salary = 10000;	
int  *p;
int  val;
p   = &salary;      //指向salary的指针 
val = *p;           //把p指向的地址上的值赋给val

标签:--,float,C++,int,地址总线,pi,CPU,指针
来源: https://blog.csdn.net/zstu_zhoubenshan/article/details/120394941