当前位置: 首页 > article >正文

【时时三省】(C语言基础)指针进阶 例题3

山不在高,有仙则名。水不在深,有龙则灵。

                         ----CSDN 时时三省

例题:

b42ab1789d074e84b8d1bbe0a3725ec9.jpg

这个arr里面是放了[a b c d e f \0] 

第一个arr 这个sizeof是计算这个数组的大小 这个里面加上\0一共是7个元素 所以打印7

第二个arr+0 这个指数组名加0 数组名没有单独放在sizeof内部 所以它是首元素地址 首元素地址加0还是首元素地址 所以这个地方打印4或者8

第三个*arr 没有单独放在sizeof内部 也没有取地址 所以他表示首元素地址 解引用 就表示第一个元素 所以就是打印1

第四个arr[1] 这个[1]表示数组的第二个元素 它的大小就是一个字节 所以打印1

第五个&arr arr是个数组名 数组名进行了取地址 取出的是整个数组的元素 他是个地址 所以打印4或者8

第六个&arr+1 它原本&arr是整个数组 是7个元素 但是+1就跳过了整个数组 跳过了七个元素 这个时候它还是个地址 所以就打印4或者8

第七个&arr[0]+1  arr[0]是我们这个数组的第一个元素 &取出第一个元素的地址 第一个元素地址取出来+1 就是第二个元素的地址 第二个元素地址还是4或者8 就是打印4或者8

 

 

 


http://www.kler.cn/news/293165.html

相关文章:

  • C++身份证实名认证-实名制-身份证三要素认证-身份认证-身份验真-接口
  • Proxifier代理配置
  • 【奔驰中国-注册安全分析报告】
  • 机器学习-33-机理模型和非机理模型
  • 【Focal Loss 本质】
  • 【开源免费】基于SpringBoot+Vue.JS在线竞拍系统(JAVA毕业设计)
  • 加载SQLite扩展的db.loadExtension方法
  • C#编写上位机通过OPC DA读取西门子PLC数据
  • 大数据开发:可视化组件Redash安装部署
  • springboot整合logback进行日志管理(上篇)
  • etc bashrc和 etc profile傻傻分不清楚?_
  • 怎么在mathtype中打空格 MathType空格键不能用
  • WHAT - React 函数与 useMemo vs useCallback
  • Redis安装步骤——离线安装与在线安装详解
  • 基于uniapp的登录状态保持(APP免登录)
  • 基于yolov8的西红柿检测系统python源码+onnx模型+评估指标曲线+精美GUI界面
  • 【QT】十分钟全面理解 信号与槽的机制
  • Java并发编程实战 04 | 使用WaitNotify时要注意什么?
  • 黑马点评6——优惠券秒杀—Redis消息队列实现异步秒杀
  • 智联云采 SRM2.0 autologin 身份认证绕过漏洞复现
  • Spring、SpringMVC、SpringBoot都是什么,有什么区别
  • 如何使用事件流相关操作
  • Maven聚合与继承
  • 11、Django Admin启用对计算字段的过滤
  • 大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
  • Java反射机制讲解
  • C++set与map容器
  • 10Python的Pandas:样式Style
  • 数据访问:JPA
  • Django ORM - 如何单独使用 Django 数据库