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

网站建设客户需求分析国内做会展比较好的公司

网站建设客户需求分析,国内做会展比较好的公司,房地产信息网查询系统,网站流量统计分析深入理解指针1 一、数组名的理解二、使用指针访问数组三、一维数组传参本质四、二级指针 一、数组名的理解 数组名就是数组首元素的地址,类型是指针类型,但是存在两个例外: sizeof(arr) : 整个数组在内存中的大小 &arr : 整个数组的地址…

深入理解指针1

  • 一、数组名的理解
  • 二、使用指针访问数组
  • 三、一维数组传参本质
  • 四、二级指针

一、数组名的理解

数组名就是数组首元素地址,类型是指针类型,但是存在两个例外:

sizeof(arr) : 整个数组在内存中的大小
&arr : 整个数组的地址

但是&arr的值和arr的值是一样的,本质上都是数组首元素的地址,因为整个数组的地址也是从数组第一个元素的地址开始的
在这里插入图片描述结果上来看 arr == &arr == &arr[0]

二、使用指针访问数组

  1. 用p来存放数组首元素的地址,p和arr等价
  2. 在编译过程中,编译器会把 arr [ i ] 转化成 *( arr + i )的形式进行编译, 因此两者也是等价的
int main()
{int arr[] = { 1,2,3,4,5,6,7,8,9 };int sz = sizeof(arr) / sizeof(arr[0]);int i = 0;int* p = arr;for (i = 0;i < sz;i++){printf("%d ", arr[i]);}printf("\n");for (i = 0;i < sz;i++){printf("%d ", *(arr + i));}printf("\n");for (i = 0;i < sz;i++){printf("%d ", p[i]);}printf("\n");for (i = 0;i < sz;i++){printf("%d ", *(p+i));}return 0;
}

在这里插入图片描述

三、一维数组传参本质

  1. 一维数组传参实际上传递的是数组首元素的地址

比如计算函数内部和函数外部数组元素个数

可以看出,数组的实际元素个数是9个,但在函数内部只算出1个,因此传参只传递了一个元素的地址,即首元素地址

  1. 一维数组传参,形参部分可以写成数组形式,也可以写成指针形式,因为本质还是指针,写成数组形式只是便于理解

示例:编写函数打印数组

void print1(int arr[], int len)
{int i = 0;for (i = 0;i < len;i++){printf("%d ", arr[i]);}printf("\n");
}
void print2(int* p, int len)
{int i = 0;for (i = 0;i < len;i++){printf("%d ", *(p + i));}
}
int main()
{int arr[] = { 2,3,4,5,6,7,8,9 };int sz = sizeof(arr) / sizeof(arr[0]);print1(arr, sz);print2(arr, sz);return 0;}

在这里插入图片描述


四、二级指针

  1. 二级指针:存放一级指针变量的地址的变量,本质是指针类型,大小是4/8个字节
    进而可以类比出三级、四级…指针

在这里插入图片描述
p存放的是a的地址,p是一个指针变量,它的地址存放在pp中,pp则是二级指针变量

  1. 二级指针的运算
    用上图举例,*pp得到的是一级指针存放的内容,即a的地址,**pp等价于*p, 得到的就是a的值10.
    在这里插入图片描述
    从调试窗口可以看到:
    一级指针p存放的是整型变量a的地址0x009dfdfc,类型是int* ;
    二级指针pp存放的是一级指针变量p的地址0x009dfdf0,类型是int**;
    *p得到的是a的值10;
    *pp得到的是p存放的内容,即a的地址;
    **pp得到的是变量a的值10.
http://www.dtcms.com/a/431771.html

相关文章:

  • 延安网站建设费用html编程教程
  • 十一 第一修联想M7400
  • 用Python打造专属本地贾维斯:声纹识别+离线交互,隐私安全不依赖云端
  • 智能体长记忆解决方案Mem0和Memobase
  • 健康网站模板正规电商平台
  • 网站布局内容tomcat wordpress
  • LeetCode 刷题【94. 二叉树的中序遍历、95. 不同的二叉搜索树 II】
  • 【代码随想录day 31】 力扣 738.单调递增的数字
  • 上海网站设计 企业有赞微商城入口
  • 【Leetcode高效算法】用双指针策略打破有效三角形的个数
  • 浏览器为什么打不开网站wordpress搭建多人博客
  • 牛客算法刷题noob57 凯撒加密
  • 计算机类毕业设计开题报告注意事项
  • Qt QML创建多线程(示例存读数据库)
  • 2026届计算机毕业设计选题推荐
  • 邹城市网站建设长春网站建设方案外包
  • 合肥建公司网站万户信息 做网站怎么样
  • 第十篇:告别new和delete:RAII机制与智能指针导论
  • 做搜狗pc网站优化快速深圳企业模板建站
  • 深度学习第十章 循环神经网络
  • 设计一个外贸网站需要多少钱wordpress 博客地址更改
  • ASP网站建设实训报告总结大德通众包做网站怎么样
  • 查询网站死链接温州百度快速排名优化
  • 网站建设全包哪家便宜怎么在网站上做按钮
  • 永州网站建设哪家好中信建设有限责任公司深圳中信金融中心项目工期专业招标
  • 八年级信息网站怎么做网站设计的价格
  • OSPF Init 状态 概念及题目
  • 事件相关电位(Event-Related Potential,ERP)
  • 运营一个网站的成本wordpress 网站小模块
  • 怀化市建设局网站地址wordpress建什么站