3.指针

1.&运算符

变量有2个维度。 一个是变量的值。 一个是变量所在内存的地址。

&表示取地址符,用于获取变量的内存地址。

2.指针定义

指针就是一个值为内存地址的变量。就如int类型变量的值是整数,char类型变量的值是字符,指针类型变量的值为地址。

int a = 1;

ptr = &a;  // ptr就是指针变量,存的是a的地址。 我们可以说ptr指向a。
3. 间接运算符:*

* 运算符作用于指针类型,可以获取或修改指针所存内存地址上的值。

int a = 1 ;  //变量a的值为1

ptr=&a;// 指针存了a的内存地址

var = *ptr    // 获取指针所存内存地址上的值,即a的值
4.指针类型的声明

声明指针变量时,必须指定指针所指向变量的类型。(因为不同类型变量占用内存大小不同,一些指针操作要求我们知道操作对象的大小)

pointer ptr; // 指针类型不能这样声明。

指针类型变量p声明方式如下:

int * p;

  • 首先前边的int表示 指针类型所指向的变量的类型。

  • 此处的* 跟上边的间接运算符不同,*p也不表示获取指针p所存内存地址上的值。 仅仅表示p是一个指针变量。

  • 声明和使用中*p代表的含义不同这点非常重要。声明中int *p表示一个指针变量, 使用中 *p表示 取指针p所存内存地址的值。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容