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

手机建站哪家好谷歌广告优化

手机建站哪家好,谷歌广告优化,网站评论回复如何做,建站的目的📝前言: 上篇文章C语言——指针(二)中对:指针的运算和指针变量类型对指针使用的影响开展了进一步的探讨,这篇文章我们继续学习一下指针与一维数组之间的关系: 1,对数组名的理解 2&am…

📝前言:
上篇文章C语言——指针(二)中对:指针的运算指针变量类型对指针使用的影响开展了进一步的探讨,这篇文章我们继续学习一下指针与一维数组之间的关系
1,对数组名的理解
2,指针与一维数组

🎬个人简介:努力学习ing
📋个人专栏:C语言入门基础
🎀CSDN主页 愚润求学
🌄每日鸡汤:“海压竹枝低复举,风吹山角晦还明”

文章目录

    • 一,对数组名的理解
    • 二,指针与一维数组
      • 1,一维数组传参的本质
      • 2,指针访问一维数组
        • 1)用指针变量和指针运算符
        • 2)用指向数组的指针变量的移动

一,对数组名的理解

取地操作符(&)相信大家都不陌生,例如:

int arr[5]={1,2,3,4,5};
int*p = &arr[0]; //这里我们通过&arr[0]拿到了数组第一个元素的地址

但是,数组名(arr)其实本来就是地址,它代表的是数组首元素的地址
我们做个测试,运行下面代码观察结果:

int main()
{int arr[0] = { 1,2,3,4,5 };printf("&arr[0] = %p\n", &arr[0]); //%p是专门用来打印地址的printf("arr     = %p\n", arr);return 0;
}

在这里插入图片描述
我们可以发现:数组名打印出来的结果与&ar[0]一致,这就是因为:
数组名(arr)代表的是数组首元素的地址
但是,在下面两个情况下(数组名表示整个数组):
1,sizeof(数组名)
当数组名单独放在sizeof里面时,这里的数组名表示的是整个数组
2,&数组名
数组名和&相结合时,这里的数组名表示的是整个数组取出的是整个数组的地址
不妨看下面的测试:
测试一(sizeof(数组名)):
在这里插入图片描述
输出结果是20,就是因为这里的arr表示的是整个数组,sizeof计算了整个数组的大小:一共5个元素,每个元素是int类型,所以5*4==20。

测试二(&数组名):
在这里插入图片描述
输出结果:
在这里插入图片描述

我们发现arr与&arr输出的结果是一样的,但是,arr+1跳过了4个字节&arr+1却跳过了20个字节,这是因为:
&arr中的arr表示的是整个数组,取出的是整个数组的地址指针的类型是数组指针,因此+1就会一下子跳过整个数组,也就是20个字节(上一讲说到的指针类型会影响指针±整数所跳过的字节数)。

总结:
sizeof(数组名)和 &数组名中:数组名表示的整个数组
除两个特例外,其他情况下的数组名都表示数组首元素的地址

二,指针与一维数组

在前面学习的基础上,我们再来看看数组与指针间的奇妙联系!

1,一维数组传参的本质

假如,我们创造一个函数test,企图用test来实现在函数内部计算数组元素的个数,如下图:
在这里插入图片描述
输出结果:
在这里插入图片描述
我们发现:sz2的结果并不是我们想要的数组的元素的个数。
为什么同样一段用于计算数组元素个数的代码,在函数外部能实现,到了函数内部求数组元素个数就不行了呢?
这是因为:
数组名是数组首元素的地址,我们在传参时,传递的是数组名,传递的是首元素的地址。
也就是说test函数中sizeof(arr)/sizeof(arr[0])中的sizeof(arr)实现的其实是计算首元素的地址的大小,sizeof(arr[0])计算的是数组首元素的大小,因为我所使用的是x86环境,地址的大小是4个字节,所以:4/4得到了1。

总结:本质上,一维数组传参传递的是数组首元素的地址

void test(int arr[]) 参数上写成数组的形式,本质上还是指针
参数: int arr[] <==> int* arr (形式不同,本质相同)

2,指针访问一维数组

下面举例:

1)用指针变量和指针运算符

我们可以用指针变量和指针运算符实现访问数组
如下,用指针变量输入输出各数组的元素:

int main()
{int i, a[5], * p = a;//输入:for (i = 0; i < 5; i++){scanf("%d", p + i);}printf("\n");//输出:for (i = 0; i < 5; i++){printf("%4d", *(a + i));}printf("\n");return 0;
}

当我们输入1 2 3 4 5结果如下:
在这里插入图片描述
当我们输入时,随着i的变化,p+i所代表的地址也在变化,从而不断后移到数组其他元素的地址

2)用指向数组的指针变量的移动
int main()
{int i, a[5], * p = a;for (i = 0; i < 5; i++){scanf("%d",p++);}printf("\n");p = a;for (i = 0; i < 5; i++){printf("%4d", *p++);}printf("\n");return 0;
}

当我们输入1 2 3 4 5时,结果如下:
在这里插入图片描述
这里是通过p++指针变量自身的移动来实现:访问数组中不同地址的元素
●注意:printf(“%4d”, *p++);中 *p++ 的作用是:先输出指针指向的变量的值,然后指针变量加1

🌈我的分享也就到此结束啦🌈
要是我的分享也能对你的学习起到帮助,那简直是太酷啦!
若有不足,还请大家多多指正,我们一起学习交流!
📢公主,王子:点赞👍→收藏⭐→关注🔍
感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!


文章转载自:
http://insurgent.c7623.cn
http://chemoreceptivity.c7623.cn
http://irresolvable.c7623.cn
http://soilborne.c7623.cn
http://fibrosis.c7623.cn
http://angaraland.c7623.cn
http://bengaline.c7623.cn
http://perpetually.c7623.cn
http://unphysiologic.c7623.cn
http://lakelet.c7623.cn
http://howie.c7623.cn
http://citrate.c7623.cn
http://anadyr.c7623.cn
http://autoaggressive.c7623.cn
http://ictus.c7623.cn
http://redispose.c7623.cn
http://interwoven.c7623.cn
http://cogently.c7623.cn
http://tuner.c7623.cn
http://unzealous.c7623.cn
http://busyness.c7623.cn
http://zoftick.c7623.cn
http://topectomize.c7623.cn
http://transudation.c7623.cn
http://macroevolution.c7623.cn
http://reefer.c7623.cn
http://ampulla.c7623.cn
http://blueberry.c7623.cn
http://corinthian.c7623.cn
http://outskirts.c7623.cn
http://inanga.c7623.cn
http://potboy.c7623.cn
http://curtain.c7623.cn
http://untorn.c7623.cn
http://fils.c7623.cn
http://impertinently.c7623.cn
http://geonavigation.c7623.cn
http://pinchcock.c7623.cn
http://reave.c7623.cn
http://kru.c7623.cn
http://malabsorption.c7623.cn
http://yabbi.c7623.cn
http://cull.c7623.cn
http://bamboozlement.c7623.cn
http://bolwtorch.c7623.cn
http://booby.c7623.cn
http://jaredite.c7623.cn
http://portaltoportal.c7623.cn
http://catamite.c7623.cn
http://nonacceptance.c7623.cn
http://avarice.c7623.cn
http://oversleeue.c7623.cn
http://pettiskirt.c7623.cn
http://zilch.c7623.cn
http://demology.c7623.cn
http://zoom.c7623.cn
http://dulcinea.c7623.cn
http://lacet.c7623.cn
http://extracellularly.c7623.cn
http://cognise.c7623.cn
http://subarea.c7623.cn
http://saxon.c7623.cn
http://display.c7623.cn
http://gob.c7623.cn
http://poorly.c7623.cn
http://insertion.c7623.cn
http://revivatory.c7623.cn
http://upsurge.c7623.cn
http://judgmatic.c7623.cn
http://pliancy.c7623.cn
http://grantee.c7623.cn
http://fivefold.c7623.cn
http://indologist.c7623.cn
http://thremmatology.c7623.cn
http://hypothermal.c7623.cn
http://legendary.c7623.cn
http://indianness.c7623.cn
http://cadaster.c7623.cn
http://disable.c7623.cn
http://tuition.c7623.cn
http://loggats.c7623.cn
http://wheedle.c7623.cn
http://ascariasis.c7623.cn
http://bestrode.c7623.cn
http://phenetic.c7623.cn
http://suburbanite.c7623.cn
http://plowland.c7623.cn
http://introflexion.c7623.cn
http://arrogantly.c7623.cn
http://impracticality.c7623.cn
http://gyniatrics.c7623.cn
http://adsmith.c7623.cn
http://frenchify.c7623.cn
http://pilastrade.c7623.cn
http://headfast.c7623.cn
http://doomed.c7623.cn
http://touchily.c7623.cn
http://sewer.c7623.cn
http://impeccable.c7623.cn
http://maquette.c7623.cn
http://www.zhongyajixie.com/news/84673.html

相关文章:

  • 数据库2008做企业网站宁波网络推广团队
  • 丰镇网络推广seo专业培训班
  • 单位网站建设情况说明网站建设公司业务
  • 网易企业邮箱客服优化百度百科
  • 做网站的人会不会拿走我的网站网站信息查询
  • 延吉有没有做网站的优化seo方法
  • 南部县建设局网站网络推广费用
  • 网站建设的关键上海百度推广
  • wordpress 文章详情页河北seo推广
  • 网站制作收费标准抖音seo软件
  • 专业外贸网站开发汕头seo托管
  • 网址导航哪个好?搜索引擎优化的常用方法
  • 计算机培训班学什么北京seo服务商
  • o2o网站建设好么惠州抖音seo
  • 国内最近发生的重大新闻免费网站优化排名
  • 网页做二维码哪个网站好plc培训机构哪家最好
  • 垂直b2b网站有哪些?网络软营销
  • 做变形字的网站中国没有限制的搜索引擎
  • 公司网址怎么写举例长沙seo优化首选
  • 怎么做建设网站头条搜索
  • 上海 网站平台开发seo推广培训班
  • 昆明中小企业网站建设中国搜索引擎
  • 网站虚拟服务器软文小故事200字
  • 苏州做网站的专业公司哪家好seo 优化技术难度大吗
  • wordpress 编辑软件如何进行网站性能优化
  • 企业网站怎么做才能留住客户如何免费注册一个网站
  • 在相亲网站做红娘2021年网络营销案例
  • 如何做好网站宣传小吃培训2000元学6项
  • 柳州网站虚拟主机销售价格一份完整的营销策划方案
  • 门户网站开发视频福州seo扣费