C与指针:第六章:指针

本文详细介绍了C语言中的指针操作,包括间接访问(解引用)指针、指针常量的强制类型转换、指针的算术运算及关系运算。通过实例解析了指针加减整数的含义,以及如何在不同情况下合法地对指针进行比较,强调了指针越界的风险及其对类型判断的重要性。
摘要由CSDN通过智能技术生成

1、通过一个指针访问它所指向的地址的过程称为间接访问或解引用指针。这个用于执行简介访问的操作符是单目操作符。

2、*&a = 25;     将25赋值给变量 a 。&操作符产生变量 a的地址,它是一个指针常量(这个指针常量并不需要知道它的实际值),* 操作符访问其操作数的所表示的地址。

3、指针常量

假定变量 a 存储于位置100,*100 = 25; 这条语句是错误的,因为字面值100的类型是整型,而间接访问操作数只能作用于指针类型表达式。如果确实想把25存储于位置100,必须使用强制类型转换。          *(int *)100  =25;  强制类型转换把值100从“整型”转换成“指向整型的指针”,这样对它进行间接访问就是合法的。

4、指针的算数运算:

1)指针  +(-)整数:

表示从当前指针位置向前或向后移动该指针类型所占字节数个字节。

2)指针  -   指针

当两个指针都指向同一数组中的元素时,才允许从一个指针减去另一个指针,如 float array[5];  p1 指向 array[i], p2指向 array[j], 那么p2 - p1 的值就是 j - i 的值。

5、指针的关系运算:

当两个指针都指向同一个数组中的元素时,用关系运算符( <    <=    >   >=)对指针进行比较也是可能的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值