指针加1

news/2024/11/9 10:00:17/

日常生活中我们常用的计算是加减乘除,那么对于指针来说,它却只有加减运算
首先我们先讨论指针加一是怎么加的
可以参考下列代码

int main()
{int arr[10] = {0,1,2,3,4,5,6,7,8,9};int *p = arr;//将数组arr[0]的地址赋给指针变量pprintf("%d\n", p);//查看此时p的地址printf("%d\n\n" ,*p);p++;printf("%d\n", p);//查看p++之后的地址printf("%d\n", *p);}

在这里插入图片描述
从结果看,在没有进行加一之前 *p所指向的是数组的第一个元素啊arr[0],在p加一之后 *p指向的是数组第二个元素arr[1],而他们的地址相差4即4个字节,int型代表的是4个字节。再取char,float,double等类型的数组做实验,结果的是一样的,则我们判断p+1指向p指向的下一个元素。同理p-1也是如此。

题外话:
因为++和 * 的算数优先级一样高且结合方式是自右向左所以 *p++等同于 *(p++)即先取 *p值再p加一。
而 *++p 是p+1再取 *p值。
++*p是将 *p的值加一


http://www.ppmy.cn/news/461841.html

相关文章

6-1

今天是儿童节,本来打算晚上去参加一个朋友聚会的,结果身体不舒服,就没去,好遗憾 1.继续联调通知GM的功能 2.要细心,耐心,遇到问题不要慌,耐心查找问题,出了问题很正常。 业务熟悉…

1-6

#include <stdio.h> int main() { int a100 ; float b3.14f ; char cC ; printf("a%d\n",a); printf("b%.2f\n",b); printf("c%c\n",c); return 0 ; }

【2023-1-6】沟通加风险 每日5题

沟通加风险 每日5题 1.项目经理发现一名新的团队资源不具备完成分配给其角色所需的技能。项目经理应该做什么? The project manager finds that a new team resource does not have the skills required to complete the job assigned to him. What should the project manag…

【66】加一

题目 给定一个由 整数 组成的 非空 数组所表示的非负整数&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外&#xff0c;这个整数不会以零开头。 我的解题 把digits先转换成str&#xff0c…

从零开始搭建群众权益平台(八)

部署过程将涉及多个步骤&#xff0c;具体取决于你选择的部署方法和目标平台。这里将以部署到云服务器为例&#xff0c;提供一个基本的流程&#xff1a; 1. 获取服务器&#xff1a; 首先&#xff0c;你需要一个服务器。你可以选择各种云服务提供商&#xff0c;如AWS、Google C…

1加7 pro (oneplus7 pro) drivedroid测试

网上盛传UFS 3.0如何快法&#xff08;androbench软件测试结果&#xff09;&#xff0c;顺序读取1000MB/s&#xff0c;顺序写入600MB/s&#xff0c;但涉及到drivedroid这个软件&#xff0c;我们要测试的是USB与电脑连接后的传输速度。 先说明一下&#xff0c;我的手机型号是GM1…

从零开始 Spring Boot 43:DI 注解

从零开始 Spring Boot 43&#xff1a;DI 注解 图源&#xff1a;简书 (jianshu.com) Spring 通过注解实现 DI&#xff08;依赖注入&#xff09;&#xff0c;本文详细讨论这些注解。 Autowired Autowired是 Spring 定义的注解&#xff0c;属于包org.springframework.beans.fac…

Vb+access学生公寓管理系统(论文+系统)

随着电脑的普及与使用,现在的管理也提升了一个档次,渐渐实现了无纸化办公,即从原来的人工记录管理模式转变为电脑一体化管理。高校是科研的阵地,后勤的公寓管理也应该一改传统的人工管理,更加信息化,时代化,节省人力物力,提高效率。基于这一点,开发此学生公寓管理软件…