2024-10-17 06:26:56发布:C语言基础知识:指针和数组的区别是什么?

发布日期:2024-10-17 06:26:56 阅读:712945 当前热度:705

来源类型:居哥哥解说 | 作者:上村祐翔 本站原创 转载请注明

【新澳内部资料精准一码】【2024年新澳门今】【2024新澳门开奖结果查询】【2024年今晚澳门特马开奖结果】【澳门特马好资料今晚开】【2024澳门六开彩开奖结果直播】【新澳今天最新资料2024年开奖】【2024新澳开奖结果】【2024今晚香港开特马开什么六期】【香港开彩开奖+结果记录】
【澳门六开奖结果2024开奖直播】 【2024澳门今晚开奖号码】 【2024年官家婆正版资料大全】

在C语言教程中我们使用通过数组名通过偏移和指针偏移都可以遍历数组,那么指针和数组到底有什么区别??


由于数组中的数据在内存中都是连续存放的,数组名默认就是数组的首地址,也是一个特殊的指针;

二.指针和数组区别

1.通过 sizeof 获取大小

不管是数组还是指针变量,计算大小的时候都可以通过sizeof函数,注意两者使用的区别:

a.计算数组大小

数组所占存储空间的内存:sizeof(数组名);

数组的大小:sizeof(数组名)/sizeof(数据类型)

b.计算指针大小

在 32 位平台下,无论指针的类型是什么,sizeof(指针名)都是 4 ,在 64 位平台下,无论指针的类型是什么,sizeof(指针名)都是 8 ;

由此可见,sizeof函数计算指针大小的时候,与数据变量类型无关,x86平台下指针大小始终为4,x64平台下指针大小始终为8;

2.指针和数组赋值方式不同

a.指针赋值

指针很灵活,它可以指向任意类型的数据。指针的类型说明了它所指向地址空间的内存。

b.数组赋值

数组在内存中是连续存放的,开辟出一块连续的内存空间。数组可以根据数组的大小进行访问,多维数组实际上由多个一维数组构成,数组的赋值这里不再重复讲解。


3.指针是指针变量,数组是指针常量

常量:常量的值始终是固定的,不能被修改;

变量:变量的值可以任意修改;

那么指针和数组区别在哪呢?

写法一是正确的,常规操作;

写法二是错误的,数组名默认指向数组的首地址,是不能被修改的;

总结:所以说数组是指针常量,不能被修改;指针是变量可以被随意修改;

为了帮助大家,轻松,高效学习C语言/C++,给大家分享我收集的资源,从最零基础开始的,帮助大家在学习C语言的道路上披荆斩棘!

编程学习书籍分享:

编程学习视频分享:

整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)

欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!大家也要把握住大学的时光,抓住成长的每一次机会哦~

对于C/C++感兴趣可以关注小编在后台私信我:【编程交流】一起来学习哦!可以领取一些C/C++的项目学习视频资料哦!已经设置好了关键词自动回复,自动领取就好了!

【新澳门2024年资料大全管家婆】【新澳门澳精准大全】【新奥历史开奖记录查询】【新澳门免费资料大全历史记录开马】【澳門一肖一碼100%精准王中王】【2024澳门历史记录查询】【2024香港最新开奖结果查询走势图】【2024澳门精准正版】【2024澳门特马今晚开奖一】【新奥彩历史开奖记录表查询】
【新澳精准资料免费提供】 【新奥新六叔新澳门】 【新澳最新最快资料新澳50期】

夏树莉绪:

9秒前:已经设置好了关键词自动回复,自动领取就好了!

IP:75.83.63.*

Rishabh:

4秒前:3.

IP:42.22.56.*

韩善续:

7秒前:写法一是正确的,常规操作;写法二是错误的,数组名默认指向数组的首地址,是不能被修改的;总结:所以说数组是指针常量,不能被修改;指针是变量可以被随意修改;为了帮助大家,轻松,高效学习C语言/C++,给大家分享我收集的资源,从最零基础开始的,帮助大家在学习C语言的道路上披荆斩棘!

IP:95.99.99.*

Royan:

5秒前:编程学习书籍分享:编程学习视频分享:整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!

IP:83.72.52.*

周圣博:

1秒前:指针的类型说明了它所指向地址空间的内存。

IP:19.46.93.*

Neher:

2秒前:指针是指针变量,数组是指针常量常量:常量的值始终是固定的,不能被修改;变量:变量的值可以任意修改;那么指针和数组区别在哪呢?

IP:39.49.61.*

大卫·克罗斯:

9秒前:通过 sizeof 获取大小不管是数组还是指针变量,计算大小的时候都可以通过sizeof函数,注意两者使用的区别:a.

IP:25.17.59.*